在github下载了一个项目,项目中有一个关于ButterKnife的错误
Annotation processors must be explicitly declared now. The following dependencies on the compile classpath are found to contain annotation processor. Please add them to the annotationProcessor configuration.
- dagger-compiler.2.0.1.jar (com.google.dagger:dagger-compiler:2.0.1)
Alternatively, set android.defaultConfig.javaCompileOptions.annotationProcessorOptions.includeCompileClasspath = true to continue with previous behavior. Note that this option is deprecated and will be removed in the future.
See https://developer.android.com/r/tools/annotation-processor-error-message.html for more details.
这个问题是因为用到了有注解的依赖包,用到注解都会报这个错。网上有很多的解决方案,大部分都是配置
javaCompileOptions { annotationProcessorOptions { includeCompileClasspath = true } }
然而一点卵用都没有!
正确的解决方案如下:将报错信息中的jar包,com.google.dagger:dagger-compiler:2.0.1,的引用方式修改一下
compile 'com.jakewharton:butterknife:7.0.1'
annotationProcessor 'com.google.dagger:dagger-compiler:2.0.1'
compile 改为 annotationProcessor