Playframework:2.4.4 斯卡拉:2.11 Java:openjdk版本" 1.8.0_66"
我尝试包含配置文件以进行特定于环境的配置。
developer.conf:
include "application.conf"
db.default.driver="org.postgresql.Driver"
db.default.url="jdbc:postgresql://localhost/mobile_server"
db.default.username="mobile_user"
db.default.password="password"
liquibase: {
driver = "org.postgresql.Driver"
url = "jdbc:postgresql://localhost/mobile_server"
user = "mobile_user"
password = "password"
}
问题是,似乎在进入包含" application.conf"文件,解析器永远不会返回解析其他主要的'文件。因此,例如,数据库属性永远不会设置。
还有其他人经历过这个吗?
答案 0 :(得分:1)
所以看来我的问题是在测试期间分叉,以加快测试时间。当你这样做时,它会掉落你的" -D"选项。为了保留它们,你需要在build.sbt文件中执行类似的操作:
Test + =" -Dconfig.resource = developer.conf"
中的javaOptions在sbt文档中描述"分叉JVM选项":
http://www.scala-sbt.org/0.13.5/docs/Detailed-Topics/Forking.html
它实质上指示sbt将所需选项传递给所有分叉的JVM进程。
答案 1 :(得分:0)
您必须明确告知激活者使用您的developer.conf
文件。像这样启动激活器:
activator -Dconfig.file=conf/developer.conf
您可能遇到的不仅仅是"只读取include语句",但该激活器只加载您的默认配置文件application.conf
,除非另有说明。