繁体   English   中英

尝试访问注入的Bean时出现Nullpointer异常

[英]Nullpointer Exception when trying to access Injected Bean

我有一个Maven多模块项目。 当尝试访问注入的bean时,我得到了Nullpointer异常。

这是启动应用程序的主要功能

public class App {

    public static void main(String[] args) {
        System.out.println("Startpoint");
        DecisionMaker decisionMaker = new DecisionMaker();
        decisionMaker.run();
    }
}

这就是我在DecisionMaker中所做的

public class DecisionMaker {

@Inject
GameListener gm;

@Inject
BasicProductionManager basicProductionManager;

public DecisionMaker() {
    System.out.println("this is the decisionmaker");
    System.out.println(gm.toString());
}

所以这不是豆子,而是普通的pojo

gamelistener是我要注入的Applicationscoped bean。

@Named
@ApplicationScoped

public class GameListener extends DefaultBWListener {

@Inject
Event<OnFrameEvent> onFrameEvent;

public Mirror mirror = new Mirror();

public Game game;

public Player self;

@PostConstruct
public void init() {
    System.out.println("init listener");
}

空指针将被抛出到DecisionMaker的构造函数中。 @PostConscrutct初始化方法未调用

我调查了类似的问题,但发现的全部是我需要已经拥有的PostConstruct方法。

您无法自己实例化DecisionMaker CDI的全部目的是使它具有创建和管理Bean的控制权。

查看本文 ,了解如何在JAVA SE中使用CDI。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM