emm*_*a90 3 scala sbt playframework playframework-2.0
我有一个具有以下配置的项目
Commons.confApplication.conf 发展Production.conf 用于生产双方application.conf并production.conf包括commons.conf
我必须使用dist任务构建应用程序来生成zip文件,然后使用projectname.bat提供的文件启动它.
我javaOptions ++= Seq("-Dconfig.file=conf/production.conf")在build.sbt中添加了但似乎没有用.我无法在命令行上启动应用程序,因为我确实希望它自动完成..conf为开发和生产单独执行文件配置的更好方法是什么,并且生产dist任务的任务是什么?
在启动应用程序时,Play会自动配置为application.conf从类路径加载.要使用替代方法覆盖此选项,您需要在启动时指定此选项.
请注意,无论您是部署到Windows .bat还是使用Linux 启动应用程序,或者.sh您正在执行该文件,如下所示: -
$ target/universal/stage/bin/<project-name>
Run Code Online (Sandbox Code Playgroud)
以上将执行您的.bat文件(如果您在Microsoft上).
因此,如果您想为prod/dev提供单独的配置文件,请使用dev的默认值application.conf并使用production.conffor prod.
如果你放入application.conf内部,conf你可以按如下方式指定: -
$ /path/to/bin/<project-name> -Dconfig.resource=production.conf
Run Code Online (Sandbox Code Playgroud)
如果application.conf没有与您的应用程序打包(即您没有将其放入,conf则需要指定完整路径使用.
$ target/universal/stage/bin/<project-name> -Dconfig.file=/full/path/to/conf/production.conf
Run Code Online (Sandbox Code Playgroud)
包括application.conf在prod.conf,只是重写你需要为督促注意,您可以包括在另一个内部的配置,所以我通常做的是指定一个prod.conf这样的: -
include "application.conf"
key.to.override=blah
Run Code Online (Sandbox Code Playgroud)
然后指定prod.conf何时启动应用程序并application.conf自动包含在内.然后,您可以指定属性prod.conf,覆盖application.conf生产环境中的属性.
并不是说你也可以使用系统属性和环境变量覆盖中的设置application.conf.我鼓励您花一些时间阅读文档以更全面地了解这些选项.
| 归档时间: |
|
| 查看次数: |
2940 次 |
| 最近记录: |