获取VariableElement的类名和包

时间:2018-06-17 11:05:20

标签: java

我在编译时在注释处理器中有一个VariableElement对象ve(我从获取ExecutableElement对象的参数得到的)(在process()方法中)。此VariableElement对象表示的类在不同情况下可能不同。

如何在编译时将完整的包和类名作为ve的字符串获取?

(例如,如果ve表示类String的参数,我需要获取字符串"java.lang.String"

编辑:根据答案到目前为止,似乎我还不够清楚。 ve不是String对象,但实际上是一个VariableElement对象,它表示方法调用(ExecutableElement)中的参数元素。我需要获取有关VariableElement ve所代表内容的信息(特别是关于参数类的类信息),而不是ve对象本身。

1 个答案:

答案 0 :(得分:2)

您可以使用VariableElement s asType()方法获取TypeMirror对象,然后toString()方法应返回该类型的“源代码”表示。 Types中还有一些可以与TypeMirror一起使用的效用函数。