【问题标题】:Annotation Processor to add a method call注释处理器添加方法调用
【发布时间】:2011-11-25 13:09:59
【问题描述】:

我正在编写一个注解处理器,我需要TreeTranslator.visitIdent 来进行静态方法调用。 我想我应该使用TreeMaker.Call,或TreeMaker.Create,还是应该使用JCMethodInvocation?我找不到任何如何使用它的例子。 有人可以帮我吗?

【问题讨论】:

    标签: java compiler-construction annotations


    【解决方案1】:

    在您的注释处理器运行时,被检查的类仅以源代码形式存在。因此你不能在它上面调用方法。

    另外,注解处理器不能直接修改正在编译的类。相反,您应该创建一个新类:

    Filer filer = env.getFiler();
    PrintWriter pw = filer.createSourceFile("com.example.MyClass");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      • 1970-01-01
      • 2011-04-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多