【发布时间】:2016-02-10 22:50:59
【问题描述】:
我想为每种模式(Dev、Prod、Test)加载不同的配置文件,所以我写了以下内容。
class CustomApplicationLoader extends GuiceApplicationLoader {
override protected def builder(context: Context): GuiceApplicationBuilder = {
Logger.info("CUSTOMBUILDER")
val builder = initialBuilder.in(context.environment).overrides(overrides(context): _*)
val mode = context.environment.mode
val configFile = s"application.${mode.toString.toLowerCase}.conf"
Logger.info("Using config file: %s".format(configFile))
val config = Configuration(ConfigFactory.load(configFile))
builder.loadConfig(config ++ context.initialConfiguration)
}
}
在我的 application.conf 文件中
play.application.loader = "modules.CustomApplicationLoader"
这在 Prod 和 Dev 模式下完美运行,但在 Test 模式下却不行。在测试模式下,永远不会触发 Logger.info("CUSTOMBUILDER")。
我似乎在文档中找不到任何关于为什么这在测试模式下不起作用的任何内容。任何帮助使它在测试模式下工作或确定问题的根源将不胜感激。
【问题讨论】:
-
你能把测试代码也贴在这里吗?
标签: scala guice playframework-2.4