Java更新导致React Native Android项目无法编译运行求助
React Native Android编译失败:Gradle插件依赖解析失败&Java版本不兼容问题
昨日更新Java 8 Update 421后,执行npx react-native run-android编译React Native应用时失败,错误提示无法解析Gradle插件依赖,存在Java版本不兼容问题。
环境信息
- Java 8 Update 421(build 1.8.0_421-b09)
- React 18.2.0
- React Native 0.73.8
相关配置文件
settings.gradle
apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings) include ':app' includeBuild('../node_modules/@react-native/gradle-plugin')
根目录build.gradle
dependencies { classpath("com.android.tools.build:gradle") classpath("com.facebook.react:react-native-gradle-plugin") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin") classpath("com.google.gms:google-services:4.3.3") }
app/build.gradle
apply plugin: "com.android.application" apply plugin: "org.jetbrains.kotlin.android" apply plugin: "com.facebook.react"
已尝试操作
- 执行
npm i react-native-gradle-plugin,问题未解决
解决步骤
核心问题:Java版本与Gradle不兼容
React Native 0.73.x要求Gradle版本≥8.0,而Gradle 8.0及以上必须使用Java 17运行环境,你当前的Java 8不满足要求,这是导致依赖解析失败的根本原因。切换到Java 17
- 安装OpenJDK 17(推荐使用Adoptium或Oracle OpenJDK)
- 修改环境变量
JAVA_HOME指向Java 17的安装路径 - 验证:执行
java -version,确认输出为openjdk version "17.x.x"
- 指定兼容的Gradle插件版本
修改根目录build.gradle中的依赖版本,确保与RN 0.73.8和Gradle 8.0兼容:
dependencies { classpath("com.android.tools.build:gradle:8.0.2") classpath("com.facebook.react:react-native-gradle-plugin") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.8.22") classpath("com.google.gms:google-services:4.3.3") }
- 检查Gradle Wrapper版本
确认gradle/wrapper/gradle-wrapper.properties中的Gradle版本为8.0+:
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-all.zip
- 清理缓存并重新构建
执行以下命令彻底清理缓存后重新构建:
./gradlew clean rm -rf node_modules package-lock.json npm install npx react-native run-android
内容的提问来源于stack exchange,提问作者Jon
相关产品推荐
相关产品推荐

