You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Expo SDK 53/React Native 0.79.5搭配Gradle 8.13时JDK版本适配及'Unsupported class file major version 68'报错解决问询

Expo SDK 53/React Native 0.79.5搭配Gradle 8.13时JDK版本适配及'Unsupported class file major version 68'报错解决问询

先给你明确核心结论

你的判断完全正确:Unsupported class file major version 68确实是因为JDK24(对应版本号68)太新,和当前技术栈不兼容。针对你的组合(Expo SDK53 + RN0.79.5 + Gradle8.13),官方推荐且完全兼容的JDK版本是JDK17

为什么是JDK17?

  • React Native 0.79.x依赖的Android Gradle Plugin (AGP) 版本为8.2.2,AGP8.x系列要求JDK17作为最低兼容版本;同时Gradle8.13对JDK17的支持最稳定(Gradle8.x最高仅支持到JDK21,JDK22+要等Gradle9.x才适配)。

Windows下的具体解决步骤(亲测有效)

1. 安装JDK17(选靠谱的发行版)

推荐用Eclipse Temurin JDK17(Expo/RN官方默认推荐):

  • 下载对应Windows x64的安装包,安装时可以不勾选「Add to PATH」(避免污染全局环境),记好安装路径(比如C:\Program Files\Eclipse Adoptium\jdk-17.0.11.9-hotspot)。

2. 给项目绑定JDK17(两种方法,推荐第二种永久生效)

方法一:临时指定(适合快速测试)

如果用CMD:

set JAVA_HOME=C:\Program Files\Eclipse Adoptium\jdk-17.0.11.9-hotspot
npx expo run:android

如果用PowerShell:

$env:JAVA_HOME = "C:\Program Files\Eclipse Adoptium\jdk-17.0.11.9-hotspot"
npx expo run:android
方法二:永久绑定项目JDK(推荐,不影响其他项目)

打开项目根目录下的android/gradle.properties文件,添加一行(注意Windows路径用双反斜杠或正斜杠):

org.gradle.java.home=C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.11.9-hotspot
# 或者用正斜杠写法:
# org.gradle.java.home=C:/Program Files/Eclipse Adoptium/jdk-17.0.11.9-hotspot

保存后再运行npx expo run:android即可。

3. 验证配置是否生效

进入项目的android目录,运行:

.\gradlew.bat --version

查看输出里的Java homeJava version是否显示为JDK17,确认后再跑构建就没问题了。


顺带解决Restricted Method警告

这个警告是JDK24的新特性限制导致的,换成JDK17后会自动消失,无需额外配置。


最后提个小建议

不要把JDK17加到系统全局PATH的最前面,用gradle.properties的局部配置是最安全的——每个项目可以独立指定JDK版本,不会和其他项目的JDK需求冲突。

如果还有问题,随时说,我再帮你排查!

火山引擎 最新活动