React Native 0.71.0项目Android模块Kotlin版本不兼容导致无法编辑问题求助
React Native 0.71.0项目Android模块Kotlin版本不兼容导致无法编辑问题求助
我之前踩过一模一样的版本兼容坑!核心问题是Gradle版本、AGP(Android Gradle Plugin)版本、Kotlin版本三者完全不匹配——你用了远高于AGP 7.3.1支持范围的Gradle 8.14.3,再加上缓存的Kotlin元数据版本冲突,光Invalidate Cache根本解决不了。下面是我亲测有效的修复步骤,完全基于不升级RN 0.71.0的前提:
一、先搞懂版本匹配逻辑(关键!)
React Native 0.71.0官方绑定的AGP版本是7.3.1,而AGP和Gradle有严格的版本绑定规则:
- AGP 7.3.x 仅支持 Gradle 7.3 ~ 7.5 版本,绝对不能用8.x版本(你当前用的8.14.3就是冲突根源)
- Kotlin版本需要和AGP、Gradle兼容,AGP 7.3.1完全支持Kotlin 1.7.x ~ 1.8.20 版本
二、具体修复步骤
1. 降级Gradle到兼容范围
打开项目根目录下的 gradle/wrapper/gradle-wrapper.properties,修改distributionUrl为AGP 7.3.1完美匹配的Gradle 7.5版本:
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip
2. 调整Kotlin版本解决元数据冲突
打开android/build.gradle的buildscript块,把kotlin_version从1.7.20升级到1.8.0:
buildscript { ext { buildToolsVersion = "33.0.0" minSdkVersion = 23 compileSdkVersion = 33 targetSdkVersion = 33 googlePlayServicesVersion = "17.0.0" firebaseMessagingVersion = "21.1.0" ndkVersion = "23.1.7779620" kotlin_version = '1.8.0' // 从1.7.20修改为1.8.0 } repositories { google() mavenCentral() } dependencies { classpath("com.android.tools.build:gradle:7.3.1") classpath("com.facebook.react:react-native-gradle-plugin") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version") classpath 'com.google.gms:google-services:4.3.15' classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.9' } }
为什么选1.8.0?因为错误提示里的
gradle-api-8.5.jar用的是1.8.0元数据,把项目Kotlin版本升到1.8.0就能直接兼容这个元数据,同时AGP 7.3.1对1.8.0版本支持很稳定。
3. 彻底清理缓存(比IDE自带功能更彻底)
只靠Android Studio的Invalidate Caches / Restart不够,必须手动删除这些文件夹:
- 删除项目根目录下的
.gradle文件夹 - 删除
android/.gradle文件夹 - 删除
android/app/build文件夹 - 关闭Android Studio,重新打开后点击Sync Project with Gradle Files
4. 验证插件兼容性
你安装的Kotlin插件2.2.0完全没问题,它支持项目使用1.7+的Kotlin版本,不需要降级插件(插件版本可以高于项目的Kotlin版本)。
三、如果还是不行的额外排查点
- 检查
local.properties文件,有没有指定错误的Gradle路径?确保它指向我们刚设置的7.5版本 - 保持
targetSdkVersion=33(和RN 0.71.0默认一致,不要随便改到35,避免触发其他兼容问题) - 进入
android目录,运行./gradlew clean命令,再同步项目
内容来源于stack exchange




