我出现的问题:
1,日志没有打印
2,编译没有生成Processor的Java文件,没有编译
解决办法:
1,参看别人的项目,他们是怎么写的
具体解决方案:
1,日志没有打印:
2,没有编译,
2.1,引入processlib
//错误写法
// implementation project(path: ':myprocessor')
//错误写法
// apt project(path: ':myprocessor')
//正确写法:作为注解处理器的依赖包,就要用annotationProcessor引入
annotationProcessor project(path: ':myprocessor')
2.2,Process类的写法
//如果只用Java自带的注解处理需要这么写 @SupportedAnnotationTypes("com.goals.myannotation.MyAnnotation") //引入google autoservice这么写 //@AutoService(Processor.class) public class MyProcessor extends AbstractProcessor {
....
}
2.3,Processlib引入google autoserviece
//正确写法,但是AS会提示你改成下边的写法,annotationProcessor是不对的。 implementation 'com.google.auto.service:auto-service:1.0.1' //虽然AS提示要这样写,但是是错误写法,会找不到googleservice依赖,这个是依赖包,并不是注解处理器,所以不能用annotationProcessor annotationProcessor 'com.google.auto.service:auto-service:1.0.1'
3,Java注解处理/google autoservice,输出结果