我有一个带有gradle的项目,并导入了Intellij-Idea。
有一个自定义注释处理器,它为类添加了变量和方法。
@SupportedAnnotationTypes(value = "my.anno.SignedSource")
@SupportedSourceVersion(SourceVersion.RELEASE_7)
public class SignedSourceAnnotationProcessor extends AbstractProcessor {
//business logics
}
使用此注释的源文件如下:
@SignedSource
public class MyClass{
private void someMethod(){
this.generatedMethod();
}
}
从命令行构建(gradlew clean构建)后,我得到了有效的.class文件。它可以从命令行完美地编译。
@SignedSource
public class MyClass{
public void generatedMethod(){
//some business code
}
private void someMethod(){
this.generatedMethod();
}
}
但是,MyClass不能在Intellij IDEA中编译,找不到生成的方法。
处理器已在
中注册 META-INF/service/javax.annotation.processing.Processor
注释处理已启用。
我想念什么?