播放dist任务:如何防止conf文件被打包
Posted
技术标签:
【中文标题】播放dist任务:如何防止conf文件被打包【英文标题】:Play dist task: how to prevent conf files to be packed 【发布时间】:2015-11-26 01:10:28 【问题描述】:运行dist任务时,分发包在两个地方包含conf文件(来自<app>/conf
):
<app.zip>/conf
<app.zip>/lib/<app.jar>
这意味着 application.conf(以及<app>/conf
内的所有其他 conf 文件)将被放置在 zip 包的根目录和主 jar 库的根目录中。
运行应用程序时,会使用 jar 中的文件,因此 <unzipped-app>/conf
中的副本将被完全忽略。
我想知道这里的最佳实践是什么:我认为 conf 文件不应该打包在 <app>
jar 中(可能是 build.sbt 上的一些表达式以将它们排除在外?),但在分发 zip 中可用文件。所以,解压部署后,可以根据需要修改conf文件。
resourceDirectory
似乎指向baseDirectory/'conf/'
,这个键是应该从packageBin
任务中明确排除的键吗?
【问题讨论】:
【参考方案1】:您可以通过以下方式添加您的 conf 文件 -
-
转到应用构建文件夹。
键入以下命令 -
java -Dapplication.secret="mySecretKey" -Dconfig.resource=conf/application.conf -cp "lib/*;" play.core.server.NettyServer 。
【讨论】:
app build folder
是什么意思? target/universal
?我实际上正在寻找 build.sbt
自定义,例如排除 conf 文件夹以打包在 <app>
jar 文件中,或类似的东西。
在您的问题中,您告诉 upzinpped/conf 文件被完全忽略,因此通过此命令,您可以使用解压缩的 conf 文件而不是 jar conf 文件。
抱歉,忘了说我是在 Linux 上运行的,我在你的命令中看不到 windows cp 分隔符。以上是关于播放dist任务:如何防止conf文件被打包的主要内容,如果未能解决你的问题,请参考以下文章