如何从javax.lang.model.VariableElement获取参数类型

如何从javax.lang.model.VariableElement获取参数类型,java,apt,Java,Apt,我正在尝试使用Java6元模型API查找方法的参数类型。如果类型是枚举, 我还想知道它的所有类型的枚举常量名称。以下是到目前为止我得到的信息: for (Element member : members) { if(member.getKind() == ElementKind.METHOD) { ExecutableElement methodElement = (ExecutableElement) member; List<? extends

我正在尝试使用Java6元模型API查找方法的参数类型。如果类型是枚举, 我还想知道它的所有类型的枚举常量名称。以下是到目前为止我得到的信息:

for (Element member : members) {
    if(member.getKind() == ElementKind.METHOD) {
        ExecutableElement methodElement = (ExecutableElement) member;
        List<? extends VariableElement> parameters = methodElement.getParameters();
        for (VariableElement parameter : parameters) {
            //How do I get the type of the parameter here?
        }
    }
}
for(元素成员:成员){
if(member.getKind()==ElementKind.METHOD){
ExecutableElement methodElement=(ExecutableElement)成员;
List获取DeclaredType


对于枚举,使用DeclaredType获取枚举类型的元素,然后使用ElementVisitor或使用getEnclosedElements()对成员进行迭代。

它起到了作用,尽管我忍不住觉得这是我使用过的最不直观的API之一。