javax.inject @Inject не работает должным образом - PullRequest
0 голосов
/ 13 октября 2019

Я пытаюсь понять, как будет работать javax.inject, но, похоже, он работает не так, как ожидалось.

package demo333;

import javax.inject.Inject;
import javax.inject.Named;

public class Demo2452 {

    @Inject private @Named("AA1") AA aa;

    public static void main(String[] args) {
        new Demo2452().m2();
    }

    private void m2() {
        System.out.println(aa.hello());
    }

}


interface AA{
    String hello();
}

@Named("AA1")
class AA1 implements AA{

    @Override
    public String hello() {
        return "helllllooooo";
    }

}

Я получаю NullPointerException, как показано ниже: stacktrace:

Exceptionв теме "main" java.lang.NullPointerException на demo333.Demo2452.m2 (Demo2452.java:15) на demo333.Demo2452.main (Demo2452.java:11)

Может кто-нибудь сказать, пожалуйстачто пошло не так в коде выше?

1 Ответ

1 голос
/ 13 октября 2019

Вам нужно добавить @Component в классе.

@Component
Class Example{}
...