我正在编写一个注释处理器,我需要TreeTranslator.visitIdent
来进行静态方法调用。我想我应该使用TreeMaker.Call
,或TreeMaker.Create
,还是应该使用JCMethodInvocation?我找不到任何如何使用它的例子。任何人都可以帮助我吗?
在注释处理器运行时,正在检查的类仅以源表单形式存在。因此,您无法在其上调用方法。
此外,Annotation Processors无法直接修改正在编译的类。相反,您应该创建一个新类:
Filer filer = env.getFiler();
PrintWriter pw = filer.createSourceFile("com.example.MyClass");