Работают ли аннотации сплетения в плагине maven?
Я работаю над пользовательским плагином maven и пытаюсь использовать аннотации Plexus для внедрения зависимостей, как показано в блоге Sonotype.
У меня есть поле, определенное в моем mojo:
/**
*/
@Requirement(hint = "rhino")
private RhinoRunner rhinoRunner;
И класс, определенный с @Component
аннотация:
/**
*/
@Component(role = RhinoRunner.class, hint = "rhino")
public class RhinoRunnerImpl implements RhinoRunner {
Затем я добавил конфигурацию в компонент.xml. Когда я использую плагин rhinoRunner
поле пустое Если я использую старый тег javadoc для зависимости, как показано ниже, он работает правильно:
/**
* @component
*/
private RhinoRunner rhinoRunner;
Можно ли заставить аннотации Java5 работать?
1 ответ
Аннотации плагинов отличаются от аннотаций сплетения (хотя аннотации плагинов используют один и тот же механизм для выполнения требования).
Вы должны продолжать использовать аннотации плагинов в Mojo, но можете свободно использовать другие аннотации в чистых компонентах (в плагине или любых вспомогательных библиотеках).