React Native项目执行yarn android报错,react-native doctor检测无异常求助
解决React Native初始化项目Android构建失败问题
1. 强制对齐Gradle插件与Java版本
打开项目根目录下的android/build.gradle文件,修改buildscript区块,明确指定兼容的Gradle插件版本,并同步Java版本配置:
buildscript { ext { buildToolsVersion = "34.0.0" minSdkVersion = 21 compileSdkVersion = 34 targetSdkVersion = 34 // 填写与你的RN版本匹配的稳定Gradle插件版本,比如RN 0.7x系列可填7.4.2 gradleVersion = "7.4.2" kotlinVersion = "1.8.0" } repositories { google() mavenCentral() } dependencies { classpath("com.android.tools.build:gradle:${ext.gradleVersion}") classpath("com.facebook.react:react-native-gradle-plugin") classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${ext.kotlinVersion}") } }
接着在android/app/build.gradle中添加Java版本强制配置:
android { // 保留原有其他配置 compileOptions { sourceCompatibility JavaVersion.VERSION_11 targetCompatibility JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = "11" } }
2. 清理Gradle缓存并重建
执行以下命令彻底清理缓存后重新构建:
# 进入android目录清理Gradle缓存 cd android && ./gradlew cleanBuildCache # 返回根目录重新安装依赖 cd .. && yarn install # 重新执行构建 yarn android
3. 验证本地Java环境实际版本
尽管react-native doctor显示正常,仍需手动确认终端当前生效的Java版本:
java -version javac -version
确保输出为Java 11,若版本不符,通过环境变量或版本管理工具(如jEnv)切换到Java 11,重启终端后重新尝试构建。
4. 锁定React Native Gradle插件版本
在项目根目录的package.json中添加resolutions字段,强制指定与RN版本匹配的插件版本(示例为RN 0.72.x对应版本):
"resolutions": { "com.facebook.react:react-native-gradle-plugin": "0.72.19" }
添加后执行yarn install更新依赖。
内容的提问来源于stack exchange,提问作者user21893378
相关产品推荐
相关产品推荐

