React Native执行react-native run-android报错:无法解析gradle:3.0.0
解决React Native
run-android 中gradle依赖解析失败的问题 嘿,我来帮你搞定这个打包报错的问题!你执行react-native run-android时遇到的根项目配置错误,核心原因是jcenter仓库已经停止维护,导致com.android.tools.build:gradle:3.0.0这个依赖的pom文件无法正常拉取。下面是几个可行的修复步骤,按顺序尝试就行:
一、替换依赖仓库为mavenCentral
jcenter已经在2021年停止了新包上传,现在很多旧资源也访问不到,咱们直接把仓库换成目前官方推荐的mavenCentral:
打开项目根目录下的build.gradle文件(不是app模块里的那个),找到repositories配置块,把所有jcenter()替换成mavenCentral(),同时确保保留google()仓库,示例代码如下:
buildscript { repositories { google() mavenCentral() // 替换原来的jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.0.0' // 其他classpath依赖保持不变 } } allprojects { repositories { google() mavenCentral() // 同样替换jcenter() // 其他自定义仓库可以保留 } }
二、清理gradle缓存并重新执行
有时候本地缓存的损坏也会导致依赖拉取失败,先清理缓存再试:
# 清理项目的gradle构建缓存 ./gradlew cleanBuildCache # 或者直接删除本地全局gradle缓存(Windows用户路径是C:\Users\<你的用户名>\.gradle\caches) rm -rf ~/.gradle/caches/
清理完成后,重新执行react-native run-android。
三、升级gradle版本(可选但推荐)
gradle 3.0.0是比较老旧的版本,和新版本的React Native、Android SDK兼容性可能有问题,如果上面两步没解决,可以考虑升级:
- 在根目录
build.gradle中,把classpath 'com.android.tools.build:gradle:3.0.0'改成稳定的高版本,比如4.2.2或者7.0.4(根据你的项目适配情况选择) - 同步修改
gradle/wrapper/gradle-wrapper.properties中的distributionUrl,比如对应gradle 7.0.4的配置是:
distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip
注意:gradle插件版本和gradle wrapper版本需要对应,比如插件4.2.2对应gradle 6.7.1,插件7.0.4对应gradle 7.0.2,你可以根据官方的版本对应表调整
四、检查网络或配置国内镜像
如果是网络问题导致无法访问mavenCentral,可以切换稳定的网络,或者在build.gradle的repositories中添加国内镜像仓库(比如阿里云):
maven { url 'https://maven.aliyun.com/repository/public/' }
内容的提问来源于stack exchange,提问作者Sai Krishna
相关产品推荐
相关产品推荐

