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

苹果M1运行React Native安卓项目报Could not open dsl generic class cache错误

错误根因

报错中Unsupported class file major version 61是Gradle版本和Java版本不兼容导致的:major version 61对应Java 17,而你当前项目使用的Gradle 6.8最高仅支持到Java 15,无法识别Java 17编译的类文件。

修复方案(两种二选一即可,优先推荐方案一,兼容性更强)

方案一:降级Java版本到11(React Native官方推荐适配版本)

  • 卸载本地当前安装的Java 17,安装Java 11版本
  • 配置Java环境变量,mac系统可在~/.zshrc或~/.bash_profile中添加如下配置:
    export JAVA_HOME=$(/usr/libexec/java_home -v 11)
    
  • 执行source ~/.zshrc(或对应你使用的shell配置文件)让配置生效,运行java -version确认输出为11.x版本即配置成功
  • 清理缓存避免旧数据影响:
    • 执行rm -rf ~/.gradle/caches/清空全局Gradle缓存
    • 进入项目android目录,执行./gradlew clean清理项目构建缓存
    • 回到项目根目录,删除node_modules文件夹和package-lock.json(或yarn.lock)文件,重新执行npm install安装依赖
  • 执行npx react-native run-android重新运行项目即可

方案二:升级Gradle版本适配Java 17

如果不想降级Java,可以升级项目Gradle版本到支持Java 17的7.3及以上版本:

  • 打开项目android/gradle/wrapper/gradle-wrapper.properties文件,修改distributionUrl参数:
    distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-bin.zip
    
  • 打开项目android/build.gradle文件,修改Android构建插件版本和Gradle适配:
    dependencies {
        classpath "com.android.tools.build:gradle:7.0.4"
        // 其余原有配置保持不变
    }
    
  • 执行方案一中的缓存清理步骤,再重新运行项目即可

内容的提问来源于stack exchange,提问作者Wai Yan Hein

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 02:15:03