有没有办法配置ClassLoader或JVM来加载带有CLASS保留策略的注释,所以我可以使用反射来访问它们?
这对于编译时后处理很有用,如here所述。 我注释了一些类,以便自动生成antlib.xml文件。我更喜欢我的注释可能有CLASS保留策略,因此它不会创建运行时依赖项。
答案 0 :(得分:1)
javac可以使用-processor
选项处理源和类级别注释。请参见javax.annotation.processing.AbstractProcessor。 (自java 1.6起)。
我在编译.java文件时开始使用它。显然它也可以用来处理带有.class输入文件的CLASS注释。我没有尝试过这个,因为我使用ant编译,而ant似乎没有将.class文件传递给编译器。
当我想要处理项目中的所有注释时,我必须进行完整的编译。
答案 1 :(得分:1)