Теперь с помощью аннотации @Creatable
можно пометить класс для внедрения, не добавляя его в EclipseContext
вручную в жизненном цикле:
Однако как насчет следующего сценария: скажем, у меня есть интерфейс SomethingService
и некоторое количество реализаций, и я хочу сослаться на одну из них (то есть ту, которая аннотирована как создаваемая) по ее интерфейсу, что-то вроде:
@Creatable
class Todo implements SomethingService {
@Inject
public Todo(SomeArg arg) {
// placeholder
}
}
// Field Injection
@Inject private SomethingService service; // Todo instance
Кажется, это вообще не работает. Есть ли способ добиться того, что мне нужно?
SomeArg
в контексте Eclipse, чтобы его можно было найти? Eclipse выполняет внедрение только в объекты, о которых знает модель приложения (части, обработчики...). - person greg-449   schedule 21.05.2014