Каков процесс обнаружения обработчиков аннотаций по умолчанию?
Документация плагина Maven Compiler в упоминает следующее:
annotationProcessors:
Имена обработчиков аннотаций. Используется только для JDK 1.6+. Если нет установлен, применяется процесс обнаружения аннотаций по умолчанию.
Что представляет собой процесс обнаружения обработчиков аннотаций по умолчанию? Есть ли другой способ настроить обработчики аннотаций, чем этот тег конфигурации?
Я обнаружил, что в документации Getting Started with the Annotation Processing Tool (apt) упоминается процедура обнаружения по умолчанию, но она работает с factory классы, а не процессоры, и, к сожалению, он использует пакеты tools.jar
и com.sun
из JDK. Это процесс обнаружения аннотаций по умолчанию?
Ответы
Ответ 1
По умолчанию, чтобы сделать компилятор, обработанный аннотацией, должен зарегистрировать его в файле в META-INF/services/javax.annotation.processing.Processor
. Файл может содержать несколько процессоров: каждое полное имя класса в своей строке, с новой строкой в конце. Компилятор по умолчанию использует процессоры, найденные таким образом, если они не указаны.