#java #maven #annotations #maven-3 #annotation-processing
#java #maven #аннотации #maven-3 #обработка аннотаций
Вопрос:
Я разрабатываю процессор аннотаций для своего проекта, используя JDK1.8, Maven 3.6.3
Текущее состояние:
- Я создаю процессор аннотаций (содержащий процессор и некоторые аннотации) в отдельном проекте с основным проектом и упаковываю его как jar
- Я регистрирую его в:
src/main/resource/META-INF/services/javax.annotation.processing.Processor
проекта процессора - В файле процессора
pom.xml
я добавляю-proc:none
в компилятор плагина maven в качестве аргумента компилятора, как мне сказали многие лекции, которые я нашел, - Я включаю jar процессора в качестве зависимости (системной области) в основной проект, который работает нормально, так как все аннотации, которые я использую, разрешены
- И мой процессор работает над обработкой аннотации
Проблема:
- В настоящее время я не могу попробовать / протестировать свой процессор аннотаций (инкубированный в проекте processor), я всегда сначала упаковывал его, а затем пробовал / тестировал его в основном проекте,
Вопрос:
- Есть ли какое-либо решение, чтобы я мог сначала протестировать свой процессор аннотаций, прежде чем упаковывать его в свой основной проект?
- Или я в чем-то ошибаюсь? пожалуйста, скажите мне, что делать
Спасибо, очень признателен за любое решение
Комментарии:
1. Можете ли вы описать, как вы тестируете прямо сейчас, особенно как вы запускаете плагин компилятора maven? Изменения заключаются в том, что вам просто нужно прекратить переход
-proc:none
к тестовой компиляции, поскольку это говорит ему не запускать ваш процессор для теста.2. пожалуйста, обратите внимание, что я использую -proc:none в проекте processor, как я описал выше, и он успешно скомпилирован, поскольку компилятор не искал обработку аннотаций. А затем я использую jar, созданный как зависимость от основного проекта, чтобы протестировать его, и он работает, процессор работает. Проблема заключается в том, как протестировать его в самом проекте процессора. если я удалю -proc:none, проект процессора всегда не будет компилироваться с сообщением «Неверный файл конфигурации …..»
3. Вы можете использовать
compile-testing
для тестирования своего процессора. Взгляните сюда: github.com/NaluKit/nalu/tree/master/nalu-processor или здесь: github.com/gwtproject/gwt-editor/tree/master /…