我是一个大量使用Guice的Web应用程序。我创建了一个模块并遵循所有Guice指南将其打包并将其放在web-inf / lib目录和我们自己的自定义API中。但是,Web应用程序找不到我的模块,我得到nullpointer错误。我想知道是否有任何方法可以在我的Web应用程序中找到已部署和注入的列表Guice模块,以查看我的列表是否已列出。
答案 0 :(得分:0)
我在你的模块中使用登录
package stackoverflowscrapbook;
import java.util.logging.Logger;
import com.google.inject.AbstractModule;
public class MyModule extends AbstractModule {
private static final Logger LOG = Logger.getLogger(MyModule.class.getSimpleName());
@Override
protected void configure() {
LOG.info("Initialising MyModule");
// rest of the configuration here
}
}
以下简单测试
package stackoverflowscrapbook;
import org.junit.Test;
import com.google.inject.Guice;
public class TestMyModule {
@Test
public void testDependencyInjection(){
Guice.createInjector(new MyModule());
}
}
生成
下面的输出 Jan 18, 2017 9:51:04 PM stackoverflowscrapbook.MyModule configure
INFO: Initialising MyModule
显然,您可以选择一个我使用JUL的不同日志框架,因为它在JDK上可用,并且还有不同级别的日志记录粒度。