如何将模块添加到 Play!带有自定义应用程序加载器的 Framework 2.6

How to add module to Play! Framework 2.6 with custom application loader

我的 Play 2.6.11 应用程序中有一个模块,我想启用它

play.modules.enabled  += "my.Module"

如果我使用 Play 提供的默认 (Guice) 应用程序加载器,这会很好用。但是,我还需要我的自定义应用程序加载器,例如

play.application.loader = MyApplicationLoader

加在一起,my.Module不实例化

有没有人有一起使用这两个的经验?我也很难找到与此相关的文档。

Play module docs 没有提到自定义应用程序加载器。

您可以通过以下方式进行

自定义加载程序

import play.api.{Application, ApplicationLoader}

class CustomLoader extends ApplicationLoader {
  def load(context: ApplicationLoader.Context): Application =
    new CustomModule(context).application
}

application.conf

application.loader = CustomLoader

CustomModule 可以加载所有其他组件。