使用 dist 命令后在哪里放置 play framework 的公共目录

Posted

技术标签:

【中文标题】使用 dist 命令后在哪里放置 play framework 的公共目录【英文标题】:where to place the public directory for play framework after using the dist command 【发布时间】:2016-04-18 21:53:45 【问题描述】:

我正在使用带有播放框架 v2.5 的“dist”命令。但是,当我解压缩文件时,它不会创建公共目录。我有以下目录: bin、conf、lib、日志和共享(包含文档)。

我应该将公共目录放置在哪里,这将与播放框架的工作方式完全相同(没有运行 dist 命令),即我可以将静态资产放在公共目录中并从那里提供它们(我不现在希望为此目的使用 CDN)。

理想情况下,我希望 dist 命令来处理它(而不是手动创建目录)。静态路由会从公共目录提供图像,还是我需要编写自己的控制器来提供这些静态资产?

【问题讨论】:

【参考方案1】:

如this 回答中所述,将这些行添加到您的 /build.sbt 文件中。

import com.typesafe.sbt.packager.MappingsHelper._
    mappings in Universal ++= directory(baseDirectory.value / "public")

这将在 dist 文件中包含您的“公共”目录(您可以像这样包含任何目录)。然后您的应用程序将在生产环境中运行。

【讨论】:

激活器似乎无法毫无问题地加载文件 - 也许我需要重新访问 build.sbt 文件 - 稍后会更新,谢谢 我停止使用公共目录 - 我也停止使用 dist 命令。我记得我对您的建议有问题 - 我会在时间允许时重新访问并接受您的回答 - 非常感谢您 @alihaider 这适合你吗? ;)

以上是关于使用 dist 命令后在哪里放置 play framework 的公共目录的主要内容,如果未能解决你的问题,请参考以下文章

ember-cli 在哪里放置图像

一些好用的命令

Anaconda tkinter菜单。我在哪里拨打电话和代码?

丢失密钥库文件后在 Play 商店中重新使用应用程序 ID

如何在 Play 2.2.x 的 dist 任务中禁用 ScalaDoc 生成(使用 project/build.scala)?

迁移到 2.4.x (Java) 后在 Play Framework 中运行测试时出错