I wonder why @Inject annotation is needed in case when a field is also annotated with some qualifiers? What is the purpose of writing:
@Inject @MyQualifier private Object field;
@MyQualifier private Object field;
Is there any way to inject the field by only qualifier annotation with Weld? I tried and create an extension that observes ProcessInjectionTarget event and returned a completely new InjecionTarget with created InjectionPoint. But the code is realy huge and hacky because it seems there is no simple way to create a custom FieldInjectionPoint at runtime.
In your extension, you can use the ProcessAnnotatedType event to search for your injection points (fields with a qualifier but without @Inject) and add the @Inject annotation to such injection points. Probably the simplest way is to use AnnotatedTypeBuilder.
|Retrieving data ...|