Play 2.6、play2-maven-plugin、自定义加载器、MessagesApi 注入器问题
Play 2.6, play2-maven-plugin, custom loader, MessagesApi injector issues
我正在努力启动正在迁移到 play 2.6 的 play 应用程序
我寻找解决方案的搜索失败。
我已经扩展了 GuiceApplicationLoader 并且我正在使用 play2-maven-plugin
7) No implementation for play.api.i18n.MessagesApi was bound.
while locating play.api.i18n.MessagesApi
for the 1st parameter of play.i18n.MessagesApi.<init>(MessagesApi.java:27)
while locating play.i18n.MessagesApi
for the 1st parameter of play.core.j.DefaultJavaContextComponents.<init>(JavaAction.scala:172)
at play.api.inject.BuiltinModule$$anonfun$$lessinit$greater.apply(BuiltinModule.scala:81):
Binding(interface play.core.j.JavaContextComponents to ConstructionTarget(class play.core.j.DefaultJavaContextComponents)) (via modules: com.google.inject.util.Modules$OverrideModule -> play.api.inject.guice.GuiceableModuleConversions$$anon)
8) No implementation for play.api.mvc.FlashCookieBaker was bound.
9) No implementation for play.api.mvc.SessionCookieBaker was bound.
我添加了以下依赖项
<dependency>
<groupId>com.typesafe.play</groupId>
<artifactId>play_2.12</artifactId>
</dependency>
MessagesApi 现在位于单独的播放模块中:https://github.com/playframework/playframework/blob/2.6.17/framework/src/play/src/main/scala/play/api/i18n/I18nModule.scala
这包含在默认播放中 reference.conf:https://github.com/playframework/playframework/blob/2.6.17/framework/src/play/src/main/resources/reference.conf#L817
默认情况下,只要依赖项在类路径上,就应该加载此 reference.conf,因此它应该可以正常工作。我在 application.conf
中覆盖了 play.modules.enabled
play.modules { enabled = []
我正在努力启动正在迁移到 play 2.6 的 play 应用程序
我寻找解决方案的搜索失败。
我已经扩展了 GuiceApplicationLoader 并且我正在使用 play2-maven-plugin
7) No implementation for play.api.i18n.MessagesApi was bound.
while locating play.api.i18n.MessagesApi
for the 1st parameter of play.i18n.MessagesApi.<init>(MessagesApi.java:27)
while locating play.i18n.MessagesApi
for the 1st parameter of play.core.j.DefaultJavaContextComponents.<init>(JavaAction.scala:172)
at play.api.inject.BuiltinModule$$anonfun$$lessinit$greater.apply(BuiltinModule.scala:81):
Binding(interface play.core.j.JavaContextComponents to ConstructionTarget(class play.core.j.DefaultJavaContextComponents)) (via modules: com.google.inject.util.Modules$OverrideModule -> play.api.inject.guice.GuiceableModuleConversions$$anon)
8) No implementation for play.api.mvc.FlashCookieBaker was bound.
9) No implementation for play.api.mvc.SessionCookieBaker was bound.
我添加了以下依赖项
<dependency>
<groupId>com.typesafe.play</groupId>
<artifactId>play_2.12</artifactId>
</dependency>
MessagesApi 现在位于单独的播放模块中:https://github.com/playframework/playframework/blob/2.6.17/framework/src/play/src/main/scala/play/api/i18n/I18nModule.scala
这包含在默认播放中 reference.conf:https://github.com/playframework/playframework/blob/2.6.17/framework/src/play/src/main/resources/reference.conf#L817
默认情况下,只要依赖项在类路径上,就应该加载此 reference.conf,因此它应该可以正常工作。我在 application.conf
中覆盖了 play.modules.enabledplay.modules { enabled = []