运行react-native run-android遇Gradle依赖404错误求助
嘿,这个问题我之前帮朋友抢救旧React Native项目时刚好碰到过!本质就是旧版本的Gradle插件已经被官方仓库下架了,导致拉取依赖时返回404。下面一步步给你说清楚怎么解决:
你提到的这些依赖链接确实存在于项目的Gradle配置文件里,旧项目用的Gradle插件版本大概率已经被停止维护的jcenter()或者旧仓库地址移除了,所以才会返回404错误。
1. 先找对两个关键配置文件
- 项目根目录下的
build.gradle:注意不是app文件夹里的那个,是项目最外层的全局配置文件,负责管理仓库和插件依赖 app模块下的build.gradle:路径为/app/build.gradle,负责APP模块的具体依赖配置
2. 更新仓库源(优先处理)
打开根目录的build.gradle,找到buildscript和allprojects里的repositories块,把过时的jcenter()替换成mavenCentral(),同时确保包含谷歌官方仓库google(),示例如下:
buildscript { repositories { google() mavenCentral() // 删掉旧的jcenter(),它已经停止维护了 } dependencies { // 这里的classpath就是你报错的Gradle插件依赖 classpath 'com.android.tools.build:gradle:7.4.2' // 后面会说怎么选有效版本 classpath "com.facebook.react:react-native-gradle-plugin:+" } } allprojects { repositories { google() mavenCentral() maven { url "$rootDir/../node_modules/react-native/android" } maven { url "$rootDir/../node_modules/jsc-android/dist" } } }
3. 获取有效的Gradle插件版本
Gradle插件版本必须和你项目里的Gradle Wrapper版本匹配,不然会出现兼容问题:
- 先查看
gradle/wrapper/gradle-wrapper.properties里的distributionUrl,比如:
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
这里的Gradle版本是7.5,对应的插件版本可以选7.4.x或者7.5.x(比如7.4.2、7.5.1都是兼容的)
2. 你也可以直接用Android Studio打开项目,它会自动检测并推荐适配的插件版本,跟着提示更新就行。
4. 同步并重新运行
修改完配置后,先在终端运行./gradlew clean(Windows系统用gradlew clean)清理旧缓存,然后再执行react-native run-android就能正常拉取依赖了。
如果还是报错,可能是项目里的第三方依赖也用了旧仓库,检查app/build.gradle里的dependencies块,把那些指向jcenter的依赖替换成mavenCentral或者其他仍在维护的仓库源。
内容的提问来源于stack exchange,提问作者Mikael Brenner




