React Native安卓构建报错:Cannot run Project.afterEvaluate(Closure)
解决React Native 0.63.5构建报错:Cannot run Project.afterEvaluate(Closure) when the project is already evaluated
这个报错核心是版本不兼容导致的,结合你当前的环境配置,按以下步骤解决:
1. 降级Gradle及Gradle Plugin到RN 0.63.5兼容版本
RN 0.63.5官方适配的Gradle版本是6.7.1,Gradle Plugin版本是4.2.2,你当前使用的7.x版本API变更会触发第三方库的旧脚本逻辑错误:
- 修改项目根目录
android/build.gradle:- 将
dependencies下的com.android.tools.build:gradle从7.0.0改为4.2.2 - 将
buildscript下的distributionUrl从https\://services.gradle.org/distributions/gradle-7.0.2-all.zip改为https\://services.gradle.org/distributions/gradle-6.7.1-all.zip
- 将
2. 降级Java版本到11
RN 0.63.x不支持Java 16,Java 11是官方推荐的稳定版本:
- 在Android Studio中切换JDK:
File → Project Structure → SDK Location → JDK Location选择Java 11的安装路径 - 或者配置系统
JAVA_HOME环境变量指向Java 11目录
3. 调整第三方库版本适配RN 0.63.5
部分第三方库的版本过高,其Gradle脚本逻辑不兼容旧版RN:
- 比如
react-native-device-info10.x版本超出RN 0.63.5的适配范围,建议修改package.json中该库版本为"react-native-device-info": "^7.6.0" - 其他如
rn-fetch-blob等库,也可确认其官方文档中适配RN 0.63.x的稳定版本,调整后重新安装依赖
4. 清理缓存重新构建
执行以下命令彻底清理缓存后重新编译:
cd android && ./gradlew clean cd .. && rm -rf node_modules && rm package-lock.json yarn.lock npm install react-native run-android
内容的提问来源于stack exchange,提问作者Diego
相关产品推荐
相关产品推荐

