我想根据当前的应用程序模式控制我加载的模块。
所以,如果我有以下模块:ModuleDev,ModuleProd 我想写这样的东西:
class CostumGuiceApplicationLoader extends GuiceApplicationLoader {
override def builder(context: ApplicationLoader.Context): GuiceApplicationBuilder = {
initialBuilder
.in(context.environment)
.loadConfig(context.initialConfiguration)
.overrides(overrides(context): _*)
}
play.api.Play.current match{
case Mode.Prod => initialBuilder.bindings(new ModuleProd)
case Mode.Dev => initialBuilder.bindings(new ModuleDev)
}
}
但是我得到一个异常:java.lang.RuntimeException:没有启动的应用程序
所以我不确定我的应用程序的生命周期中应该添加这个逻辑 我使用此article作为参考
谢谢!