我为单元测试配置了build.sbt,使用不同的Play(2.3.9用于Scala和SBT 0.13.5)配置,
javaOptions in Test ++= Seq("-Dconfig.file=/home/kitty/acme/test/resources/test-application.conf")
播放没有取消test-application.conf
并在application.conf
中使用conf
。 AFAIK,在这种情况下没有scalaOption
。但是,如果我在命令行中包含-Dconfig.file
,它可以正常工作,
sbt test -Dconfig.file=/home/kitty/acme/test/resources/test-application.conf
我该如何解决这个问题?感谢。
答案 0 :(得分:7)
javaOptions in Test ++= Seq("-Dconfig.file=/home/kitty/acme/test/resources/test-application.conf")
无效,因为fork in Test
为false
。因此,将fork
设置为true
即可。像-Dconfig.resource
这样的-Dconfig.file
的工作方式也是一样的。如果没有分叉,SBT将不会捡起它。严格来说,javaOptions
仅与fork
合作true
,如上所述here
答案 1 :(得分:1)
你几乎就在那里,你可以强制像这样的JVM选项
javaOptions in Test ++= Seq("-Dconfig.file=/home/kitty/acme/test/resources/test-application.conf")
config.file 也采用相对路径,例如conf / test-application.conf