Java SE CDI maven зависимостей? - PullRequest
0 голосов
/ 20 апреля 2020

Java SE maven зависимостей CDI?

public class FooProcessor {

    private FooService fooService;

    @Inject
    public FooProcessor(FooService fooService) {
        this.fooService = fooService;
    }
}

Каковы зависимости jar для CDI для Java SE?

Какая зависимость jar имеет @Inject? Пробовал

compile "org.jboss.weld.se:weld-se-core:3.0.2.Final"
compile 'org.apache.deltaspike.cdictrl:deltaspike-cdictrl-api'
compile group: 'javax.enterprise', name: 'cdi-api', version: '2.0.SP1'
compile group: 'javax', name: 'javaee-api', version: '7.0'

1 Ответ

0 голосов
/ 20 апреля 2020

Вы можете настроить CDI в автономном режиме, используя Weld эталонную реализацию.

Пример:

Weld weld = new Weld();
WeldContainer container = weld.initialize();
FooProcessor fooProcessor = container.instance().select(FooProcessor.class).get();
weld.shutdown();

и зависимость сварки

<dependency>
    <groupId>org.jboss.weld.se</groupId>
    <artifactId>weld-se-core</artifactId>
    <version>3.1.4.Final</version>
</dependency>

Относительно @Inject он исходит от

<dependency>
    <groupId>javax.inject</groupId>
    <artifactId>javax.inject</artifactId>
    <version>1</version>
</dependency>

и от JSR 330: Dependency Injection For Java, который вводит стандартный набор аннотаций, которые можно использовать для внедрения зависимостей.

...