You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native 0.60升级至0.73后Java toolchain兼容性错误求助

React Native 0.73升级Gradle错误解决方案

问题原因

RN 0.73引入了Gradle Java Toolchain特性,而你的项目中存在全局强制覆盖子项目compileSdkVersion的配置,同时可能残留了旧的Java版本sourceCompatibility/targetCompatibility设置,两者冲突导致报错。


解决步骤

1. 删除全局强制覆盖的子项目配置

直接移除android/build.gradle中以下代码块,它会强制所有子项目使用过时的compileSdkVersion 28,和RN 0.73要求的33冲突,还会干扰Toolchain配置:

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 28
                buildToolsVersion "28.0.3"
            }
        }
    }
}

2. 统一Java版本配置(替换旧的兼容设置)

如果你的app/build.gradle或其他模块中存在sourceCompatibility/targetCompatibility配置,替换为Gradle Toolchain的写法(RN 0.73默认要求Java 17):

  • 旧配置(删除):
android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}
  • 新配置(添加):
android {
    compileOptions {
        toolchain {
            languageVersion = JavaLanguageVersion.of(17)
        }
    }
}

3. 确认Gradle版本兼容性

AGP 7.4.2需要搭配Gradle 7.5及以上版本,检查android/gradle/wrapper/gradle-wrapper.properties中的distributionUrl:

distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip

如果版本过低,替换为上述内容。

4. 清理缓存并重新构建

执行以下命令彻底清理缓存后重新编译:

# 进入android目录
cd android
# 清理gradle缓存
./gradlew clean
# 返回根目录清理node_modules和锁文件
cd ..
rm -rf node_modules package-lock.json yarn.lock
# 重新安装依赖
npm install # 或 yarn install
# 运行项目
npx react-native run-android

内容的提问来源于stack exchange,提问作者Backup Gov18

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 08:47:09