【发布时间】:2019-06-18 14:21:18
【问题描述】:
如果我理解正确的话,Java CDI 应该独立于 Weld。但是我看到的所有示例都使用 Weld 来初始化容器。
我正在尝试在没有 Weld 的情况下使用 CDI,因为虽然我想使用 DI,但我的内存非常有限。
这是我的 LoggerFactory 的示例-
@ApplicationScoped
public class LoggerFactory {
@Produces
@Singleton
public Logger getLogger() {
return LogManager.getLogger("com.myapp");
}
}
我试图在 Main 中获取它-
Logger logger = CDI.current().select(Logger.class).get();
当我这样做时,我会得到Unable to locate CDIProvider。
是否可以在没有附加库的情况下使用 CDI?在这种情况下如何获取我的 Logger?
【问题讨论】:
标签: java dependency-injection cdi weld