Как я могу использовать CDI JSR-299 для внедрения (не аннотированных) компонентов из внешних библиотек?
Примеры:
Интерфейс X и его реализации взяты из сторонней библиотеки lib. Как я могу решить, какую реализацию использовать?
class A {
@Inject
private X x;
}
Что если бы у меня было несколько классов, использующих интерфейс X, но с разными реализациями?
class A {
@Inject
private X x; // should be XDefaultImpl
}
class B {
@Inject
private X x; // should be XSpecialImpl
}