Я хотел бы использовать инъекцию зависимостей в большом автономном приложении Java 7, но я не уверен, с чего начать.
Я написал небольшое тестовое приложение:
public class Main {
@Inject
MyInterface myInterface;
public static void main( String[] args ) {
Main m = new Main();
System.out.println(m.myInterface.getMessage());
}
}
с интерфейсом:
public interface MyInterface {
String getMessage();
}
и реализация интерфейса:
@Singleton
public class MyInterfaceImpl implements MyInterface {
public String getMessage() {
return "Hello World!";
}
}
pom.xml
содержит одну зависимость:
<dependencies>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
<scope>provided</scope>
</dependency>
</dependencies>
Это приложение компилируется, но, конечно, при попытке распечатать сообщение он сработает с помощью NPE
. Инъекции не произошло.
Итак, мой вопрос:
- Возможно ли внедрение зависимостей в автономном приложении Java 7?
- Какие другие зависимости я должен включить, чтобы заставить его работать?
- Есть ли у кого-нибудь простой операционный пример для совместного использования (я не мог найти его)?