React Native Android构建失败:hermes-engine配置问题求助
React Native Android构建失败:Unsupported class file major version 65
错误详情
FAILURE: Build failed with an exception. - 问题原因: 无法确定任务':app:compileDevelopmentDebugJavaWithJavac'的依赖项。 > 无法解析配置':app:developmentDebugRuntimeClasspath'的所有依赖项。 配置项目':react-native:packages:react-native:ReactAndroid:hermes-engine'时出现问题。 > 无法打开构建文件'/Users/hass/App/node_modules/react-native/ReactAndroid/hermes-engine/build.gradle'的cp_proj通用类缓存(路径:/Users/hass/.gradle/caches/8.0.1/scripts/aq46hk5izce44sxm4xg4lchjk)。 > 错误!在源单元'_BuildScript_'的'semantic analysis'阶段发生异常:Unsupported class file major version 65
问题根源
Unsupported class file major version 65 是核心错误,对应Java 21版本。当前使用的Gradle 8.0.1不支持Java 21——Gradle 8.0.x系列最高仅兼容Java 17,Java 21需要Gradle 8.5及以上版本才能适配。
解决方案
方案1:降级Java版本到17
- 检查当前Java版本:
java -version - 若输出为Java 21,切换到Java 17:
- 使用SDKMAN:
sdk install java 17.0.10-zulu(可替换为其他17稳定版本),再执行sdk use java 17.0.10-zulu - 手动配置:修改
JAVA_HOME环境变量指向Java 17安装路径,同步更新系统PATH
- 使用SDKMAN:
- 确认切换成功后,清理并重新构建:
./gradlew clean build
方案2:升级Gradle版本到8.5+
- 打开项目根目录下的
gradle/wrapper/gradle-wrapper.properties文件 - 修改
distributionUrl为支持Java 21的Gradle版本,例如:distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-all.zip - 执行清理构建:
./gradlew clean build
注意:如果你的React Native版本低于0.72,升级Gradle后可能需要同步升级RN版本以保证兼容性,优先推荐方案1。
内容的提问来源于stack exchange,提问作者sai
相关产品推荐
相关产品推荐

