获取TypeElement内部和注释处理器的类名

时间:2012-11-14 14:43:59

标签: java annotations javac processor

我正在编写一个在javac中运行的注释处理器。 它扫描带注释的类并生成包含类名的资源文件。 这些名称将在运行时使用,以便Class<?>感谢Class.forName(String)

如何从javax.lang.model.element.TypeElement获取课程名称(例如pgk1.pkg2.Foo $ Bar)。

提示:我既不需要简单名称(例如Bar),也不需要限定名称(例如pgk1.pkg2.Foo.Bar)。

1 个答案:

答案 0 :(得分:7)

注释处理器由编译器初始化并接收ProcessingEnvironment实例。

方法Name ProcessingEnvironment.getElementUtils().getBinaryName(TypeElement)返回一个二进制名称,可用于稍后实例化该类。