【发布时间】:2012-10-11 03:57:41
【问题描述】:
如何在 Play 2 应用程序中为开发和生产模式设置不同的配置?
我尝试在应用程序启动时使用 JVM 参数,如下所示:
play "run -Dconfig.resource=dev.conf"
或从 Play 控制台:
run -Dconfig.resource=dev.conf
但它不起作用。
【问题讨论】:
标签: playframework-2.0 sbt
如何在 Play 2 应用程序中为开发和生产模式设置不同的配置?
我尝试在应用程序启动时使用 JVM 参数,如下所示:
play "run -Dconfig.resource=dev.conf"
或从 Play 控制台:
run -Dconfig.resource=dev.conf
但它不起作用。
【问题讨论】:
标签: playframework-2.0 sbt
应该可以的:
play -Dconfig.resource=dev.conf "run"
无论如何我在使用-Dconfig.resource 时遇到了一些问题,所以我改用-Dconfig.file
play -Dconfig.file=/full/path/to/your/project_folder/conf/alt_conf.conf "run"
【讨论】:
-Dconfig.resource,但 -Dconfig.file 可以在绝对路径下正常使用。这个 JVM 系统属性也可以使用 _JAVA_OPTIONS 环境变量传递,该环境变量由 Play python 运行脚本“拾取”,例如export _JAVA_OPTIONS="-Dconfig.file=/absolute/path/to/app/conf/dev.conf" 后跟 play run。
最好将标准 application.conf 文件用于您的开发文件,并将特定文件用于您的其他环境。
然后,使用@Biesior 的建议,您可以在 dev 中使用:
play start
对于其他环境,例如 Heroku,使用其他文件:
play start -Dconfig.file=conf/application.heroku.conf
【讨论】: