注释处理器可以用于代码生成吗?

use*_*855 10 java annotations

假设我定义了一个名为的注释@MyAnnotation.

有一个类X被声明为:

@MyAnnotation
class X { .... }
Run Code Online (Sandbox Code Playgroud)

现在在编译时,我想检查所有注释的类,@MyAnnotation并对需要在同一进程中编译的更多java源文件执行一些代码生成.

这可能使用java注释处理器或其他一些工具吗?

san*_*ana 15

APT工具已经合并到Java 6中的javac中.是一个更好的注释处理教程.


Ale*_*lex 11

你可以看一下Java apt (Annotation Processing Tool)这样的事情.

你可以找到入门页面,和一个不错的文章(1,2,3)关于如何用它来生成代码.