我在this blog之后编写了一个注释处理器,代码没有问题,但是它不能生成文件,于是我发现是Gradle版本。
我的Gradle设置:
root -> build.gradle:
dependencies {
classpath 'com.android.tools.build:gradle:3.4.2'
}
gradle / wrapper / gradle-wrapper.properties:
distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
因此,当我将Gradle版本降级到4.6时,一切都很好。
我更改的Gradle设置:
root -> build.gradle
:
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
}
gradle / wrapper / gradle-wrapper.properties:
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip
我查阅了有关Gradle 5.x的文档,一无所获。是否有某些行为改变会导致此问题?
我想使用Gradle 5.x怎么办?
答案 0 :(得分:1)
我在升级Android Studio(3.3-> 3.4)时遇到了同样的问题(此升级是从4.10.1-> 5.1.1升级的)。并非完全是4.6,但我注意到从4.6-> 4.10以来没有重大变化,因此我认为以下内容将起作用。 我正在使用kapt,以及我作为Java模块构建的注释处理器。更新前一切正常。
我的解决方法是:
-将com.google.auto.service:auto-service
升级到1.0-rc6
-将annotationProcessor "com.google.auto.service:auto-service:1.0-rc6"
添加到注释处理器的build.gradle文件中。
通过这些找到了我的答案:
-https://github.com/gradle/gradle/issues/7941
-https://github.com/ishaigor/annotation-processor-sample/commit/d7645914b9f53a5f350c7098973f3554c48e75d8
希望这会有所帮助。