обработка пользовательских аннотаций - PullRequest
2 голосов
/ 24 августа 2011

Мне нужна помощь с пользовательскими аннотациями Java, я знаю, как создавать аннотации, но не знаю, как это обрабатывать.
Я прошел через некоторую информацию, где я увидел APT, который com.sun.mirror.*, а другой javax.annotation.processing.*, я запутался между двумя.

Может ли кто-нибудь помочь мне обработать пользовательские аннотации и предоставить полезную ссылку.

Ответы [ 2 ]

4 голосов
/ 24 августа 2011

Существует разница между старым apt (инструмент обработки аннотаций, в com.sun.mirror) и его преемником, API сменных аннотаций (который является частью javac начиная с 1.6). Новый API, используемый для обработки, находится в javax.annotation.processing.

API, используемый для анализа элементов объявления исходного кода, представляет собой Mirror API , его пакет находится в javax.lang.model, этот API имеет сходство с Reflection API.

Многие источники, вероятно, будут говорить о apt, но все еще действительны для процессора в javac. Только пакеты и способ запуска инструмента обработки изменились. Вот учебник .

2 голосов
/ 24 августа 2011

Если вам нужно обрабатывать аннотации во время / до компиляции (то есть для создания «побочных файлов»), тогда используйте apt .

OTOH, если вам нужно обрабатывать аннотации во время выполнения, тогда просто использовать java отражение, чтобы получить аннотацию для определенного класса .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...