使用@Inject批注时出现NullPointerException

时间:2018-01-24 21:02:42

标签: java dependency-injection inject

我甚至认为我在MyClass中使用@Inject Message对象时出现此错误。 我现在试着学习它如何注入一个物体。

请帮帮我,谢谢!

以下是我的例子。

主:

public class Main {

    public static void main(String [] arg){
        new MyClass().print();
    }

}

MyClass的

import javax.inject.Inject;

public class MyClass {

    @Inject private Message message;

    public void print() {
        System.out.println(message.getMessage());
    }

}

消息

public class Message {

    public String getMessage() {
        return "Hello";
    }

}

1 个答案:

答案 0 :(得分:1)

您没有得到任何可以解释或使用@Inject注释的内容。您需要某种DI框架,它实际上会为您执行依赖注入。或许可以考虑查看GuiceSpring

之类的最小示例

如果你分析当前的程序,你只是声明一个字段(默认为null),并且从不将它设置为任何东西,因此是NPE。