我希望在生产和开发环境中使用不同的application.conf
和logback.xml
。
我找到了一些方法并尝试过。但他们都没有为我工作:
请帮助我理解我犯的错误。
我尝试了以下内容
PlayKeys.devSettings := Seq("""play.server.http.port""" -> "8080","""-Dlogger.file""" -> "C:/Playworkspaces/conf/dev-logback.xml","""-Dconfig.file""" -> "C:/Playworkspaces/conf/devApplication.conf")
PlayKeys.devSettings := Seq("play.server.http.port" -> "8080","-Dlogger.file" -> "conf/dev-logback.xml","-Dconfig.file" -> "conf/devApplication.conf")
sbt run -Dlogger.file->C:/Playworkspaces/conf/dev-logback.xml
所有事情都尝试使用和不使用(conf / devApplication.conf,devApplication.conf)完整路径。
答案 0 :(得分:1)
使用-D
时,不要写"config.file" -> "C:/Playworkspaces/conf/devApplication.conf"
前缀,例如,它应该是
"-Dconfig.file" -> "C:/Playworkspaces/conf/devApplication.conf"
而不是
app/conf/devApplication.conf
另外,我可以看到你在文件系统而不是类路径中放置了DEV配置。如果DEV配置不包含任何机密,我的建议是将它放在config.resource
下的类路径上并通过PlayKeys.devSettings := Seq("config.resource" -> "devApplication.conf")
提供:
load()
答案 1 :(得分:0)
sbt run -Dlogger.file->C:/Playworkspaces/conf/dev-logback.xml
应为=
。
正如Mario所解释的那样,将额外的配置文件放在conf目录(classpath)中。
尝试:
sbt run -Dlogger.resource=dev-logback.xml -Dconfig.resource=devApplication.conf
其他信息: