首页 文章

使用Guice插件播放2.0.4 Java - 应用程序启动时出错

提问于
浏览
0

我们在文档中设置了guice,它似乎工作正常但我们在应用程序日志中遇到以下错误:

[warn]应用程序 - 也许inject.modules配置参数没有设置propery? java.lang.ClassNotFoundException:java.net.URLClassLoader $ 1.run(URLClassLoader.java:366)中的java..LLC程序,java.net.URLClassLoader $ 1.run(URLClassLoader.java:355)java.security.AccessController.doPrivileged原始方法)在java.net.URLClassLoader.findClass(URLClassLoader.java:354)java.lang.ClassLoader.loadClass(ClassLoader.java:423)at java.lang.ClassLoader.loadClass(ClassLoader.java:356)at com .typesafe.plugin.inject.InjectPlugin.createModules(InjectPlugin.java:88)at com.typesafe.plugin.injectPlugin.availableModules(InjectPlugin.java:29)at com.typesafe.plugin.inject.GuicePlugin.onStart(GuicePlugin) .java:33)at play.api.Play $$ anonfun $ start $ 1.apply(Play.scala:60)at play.api.Play $$ anonfun $ start $ 1.apply(Play.scala:60)at scala . collection.LinearSeqOptimized $ class.foreach(LinearSeqOptimized.scala:59)at scala.collection.immutable.List.foreach(List.scala:45)at play.api.Play $ .start(Play.scala:60)...

有什么可以忽略的吗?如果在application.conf中没有为inject.modules指定任何内容,则inject.modules似乎是默认值 .

1 回答

  • 1

    您必须提供一个名为 module.Dependencies 的类来进行绑定,例如:

    package module;
    
    import com.google.inject.*;
    import service.*;
    
    public class Dependencies implements Module {
    
     public void configure(Binder binder) {
         binder.bind(Service.class).to(SomethingService.class);
      }  
    }
    

    看看here .

相关问题