我需要一些帮助,使用RetentionPolicy.RUNTIME(类似于@Deprecated)为注释开发处理器。无论Spring,Java EE等,我都在JavaSE环境中寻求解决方案。
我现在理解下一点:
- com.sun.mirror.apt已弃用,不应再使用;
- AbstractProcessor(子类),文件META-INF \ source \ javax.annotation.processing.Processor和一个注释本身都部署在jar文件中并放置在主应用程序的CLASSPATH中(使用Enabled注释处理)完全正常工作RetentionPolicy.SOURCE;
醇>
但是,我是对的:
- 上面提到的使用AbstractProcessor的方法不起作用
RetentionPolicy.RUNTIME(或者至少我不能使它工作);
- 出于RUNTIME的原因,应该使用实现InvocationHandler接口的注释处理器(link)。
醇>
另外,@ Deprecated的处理器是通过apt还是InvocationHandler开发的?我在jdk中找不到这个注释的处理器。