Gradle升级后React Native Android构建报错
我之前也踩过这个Gradle的坑,当时折腾了好一阵才解决,给你整理几个经过验证的解决方案,按顺序试应该能搞定:
解决配置':app'时BuildArtifactReportTask代理类异常的方案
1. 检查Gradle与AGP版本兼容性
这是最常见的诱因——Android Gradle Plugin(AGP)和Gradle本身的版本必须严格匹配,版本不兼容会直接导致代理类生成失败。
- 查看当前项目的AGP版本:打开项目根目录的
build.gradle(Project级),找到dependencies块里的com.android.tools.build:gradle版本,比如classpath "com.android.tools.build:gradle:7.4.2" - 查看当前Gradle版本:打开
gradle/wrapper/gradle-wrapper.properties,找到distributionUrl对应的版本,比如gradle-7.5-bin.zip - 对照官方版本对应表调整:比如AGP 7.4.x需要搭配Gradle 7.5+;AGP 8.0.x需要Gradle 8.0+。如果版本不匹配,修改对应的配置后点击"Sync Now"重新同步项目。
2. 清理Gradle缓存与构建文件
Gradle的缓存有时候会出现损坏,导致任务代理类生成异常,清理缓存通常能解决这类问题:
- 用Android Studio自带工具清理:点击顶部菜单栏的
File -> Invalidate Caches...,勾选"Invalidate and Restart",等待IDE重启 - 手动清理文件:删除项目根目录下的
.gradle文件夹,以及app模块下的build文件夹 - 终端命令清理:在项目根目录执行以下命令(Windows系统去掉开头的
./):./gradlew clean build --refresh-dependencies
3. 检查JDK版本是否符合要求
AGP从7.0版本开始要求使用JDK 11,如果你的项目用了低版本JDK,也会触发这类异常:
- 打开Android Studio的
File -> Project Structure -> SDK Location,检查JDK Location是否选择了"Embedded JDK"(IDE自带的JDK 11,推荐使用) - 如果用自定义JDK,确保版本是11及以上;也可以在项目的
gradle.properties里手动指定JDK路径:org.gradle.java.home=/path/to/your/jdk11
4. 排查第三方插件冲突
某些老旧的第三方插件(比如早期的ButterKnife、自定义编译插件)可能和当前AGP版本不兼容,导致任务执行异常:
- 暂时注释掉
build.gradle里可疑的第三方插件依赖,重新同步项目,看问题是否消失 - 如果确定是某个插件的问题,去插件的官方仓库查看最新版本,更新到支持当前AGP版本的版本
5. 检查项目配置文件是否损坏
如果以上方法都没用,可能是项目的build.gradle文件存在语法错误或无效配置:
- 检查app模块和根目录的
build.gradle文件,有没有IDE标红的语法错误 - 对比一个新建的空白Android项目的
build.gradle配置,逐步排查并修正差异
如果所有方法都试过还是不行,可以尝试新建一个空白Android项目,把原项目的代码、资源、依赖逐步迁移过去,排除项目配置本身的底层问题。
内容的提问来源于stack exchange,提问作者Naveen Vignesh




