0
我是一个新的Guice依赖注入,希望有人能解释我为什么我的代码不起作用。Google Guice。用@Provides注释注释的方法不会被调用
这里是一个扩展AbstractModule类:
public class WebCoreModule extends AbstractModule {
@Provides
public SomeFactory getSomeFactory() {
return new SomeFactoryImpl();
}
}
,并在其他类我有一个私有成员
private static @Inject SomeFactory factory;
我想调用上factory
对象的方法,但它是始终为空。此外,我在getSomeFactory()
方法上设置了一个断点,它永远不会被调用。
我在做什么错?
过得好“其他类”的实例?大概不是通过“注射器”。 –
我的'其他类'是AspectJ方面,所以它是由框架创建的。它是如何创建使用依赖注入的类的实例? –
绝对如此。如果Guice框架没有创建你的类,它不知道它存在并且不能执行注入。这对所有DI框架都是一样的,除非它们运行某种类型的字节码增强。 –