【发布时间】:2021-01-11 19:39:35
【问题描述】:
我有一个使用 sbt 构建的 Scala Play 应用程序。
当我使用sbt dist 命令构建包时,这将导致在/target/universal 路径中部署一个存档。问题是我有 3 个配置文件:
- application.conf
- dev.conf
- prod.conf
如果我尝试运行sbt dist -Dconfig.resource=prod.conf,我会收到错误:
[error] Expected ID character
[error] Not a valid command: prod (similar: stopProd, runProd, reload)
[error] Expected project ID
[error] Expected configuration
[error] Expected ':' (if selecting a configuration)
[error] Expected key
[error] Not a valid key: prod (similar: products, projectId, project-id)
[error] prod.conf
即使我使用引号或-Dconfig.file,结果也是一样的。我哪里错了?谢谢
后期编辑:
sbt dist 将构建 bin/*.bat 文件,但其余文件将保持未构建状态。所以,我想如果我选择这个.zip 解决方案,所有环境类型(dev、stage、prod)的包都是相同的,但是我可以在运行命令启动应用程序时选择配置文件:
例如,对于 prod,我可以使用:
nohup ./app-name-1.0/bin/app-name -J-Xms8g -J-Xmx8g -Dconfig.resource=prod.conf -Dhttp.port=7777</dev/null>> logfile.log 2>&1 &
-Dconfig.resource=prod.conf 在此帖子中制作我想要的内容。
【问题讨论】:
标签: scala build playframework sbt