如何添加模块播放!框架2.4

时间:2015-08-25 13:11:04

标签: scala module routing playframework-2.4

我正在尝试将一些应用程序逻辑分成模块。 我已经创建了应该处理用户的模块(查看配置文件等(模型+控制器))

我已将模块添加到reference.conf

play.modules.enabled += "modules.users"

但是当我尝试访问app时:

Module [modules.users] cannot be instantiated.

仅创建Custom loader选项吗?

1 个答案:

答案 0 :(得分:2)

此语法仅适用于运行时依赖项注入:在运行时读取配置,并加载所需的模块。

模块“name”必须引用Guice Module,您可以在其中定义自定义绑定。

一个完整的例子:

CONF / application.conf

play.modules.enabled += "auth.di.AuthModule"

模块/ AUTH /应用程序/二/ AuthModule.scala

package auth.di

class AuthModule extends AbstractModule {

   def configure() = {
       // Binds your services here
   }
}

build.sbt

lazy val root = (project in file("."))
  .enablePlugins(PlayScala)
  .dependsOn(moduleAuth).aggregate(moduleAuth)

lazy val moduleAuth = (project in file("modules/auth"))
   .enablePlugins(PlayScala)

提示:使用scala-guice更流畅地定义模块。