Sae*_*umi 1 java annotation-processing
我正在写一个注释处理器,我PostConstruct只对方法使用注释。假设我有一个这样的课:
public MyClass{
@PostConstruct
public void onCreate(){
}
}
Run Code Online (Sandbox Code Playgroud)
所以在我的注释处理器中,我可以获得onCreate方法:
for (Element element : roundEnv.getElementsAnnotatedWith(PostConstruct.class)) {
if (element.getKind() != ElementKind.METHOD) {
return false;
}
ExecutableElement method = (ExecutableElement) element;
}
Run Code Online (Sandbox Code Playgroud)
而且我还需要了解onCreate方法(MyClass)的类名,但ExecutableElement没有提供任何方法来做到这一点。还有其他实用程序类可以给我类名吗?
声明方法的类是方法的封闭元素:
TypeElement declaringClass =
(TypeElement) method.getEnclosingElement();
String className =
// also getSimpleName()
declaringClass.getQualifiedName().toString();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
568 次 |
| 最近记录: |