首次在VS Code运行Flutter项目遇Gradle类缓存及版本兼容错误
Flutter运行报错:Unsupported class file major version 64
错误核心信息
FAILURE: Build failed with an exception. 无法为设置文件'E:\User\Documents\Practise\Practice\Practice\Flutter\flutter_application_1\android\settings.gradle'打开设置通用类缓存(路径:C:\Users.gradle\caches\7.5\scripts\3d075fs9hjp81ny0sgym4v09w)。 BUG! 源单元'_BuildScript_'的'semantic analysis'阶段出现异常:Unsupported class file major version 64 BUILD FAILED in 5s Exception: Gradle task assembleDebug failed with exit code 1
问题原因
Unsupported class file major version 64 对应JDK 20,而当前使用的Gradle 7.5不支持JDK 20及以上版本,导致Gradle无法解析高版本JDK生成的类文件,进而无法打开缓存。
解决方案
1. 检查当前JDK版本
打开命令提示符(CMD),执行:
java -version
确认输出是否为JDK 20及以上版本。
2. 调整JDK版本至Gradle兼容范围
Gradle 7.5支持JDK 8~17,推荐使用JDK 17:
方法一:全局配置JDK
- 下载并安装JDK 17(选择对应Windows版本)
- 配置环境变量:
- 新建系统变量
JAVA_HOME,值为JDK 17的安装路径(例:C:\Program Files\Java\jdk-17.0.9) - 编辑系统变量
Path,将%JAVA_HOME%\bin移至最顶端
- 新建系统变量
- 重启VS Code后重新运行项目
方法二:仅为当前Flutter项目指定JDK
- 打开项目的
android\gradle.properties文件 - 添加一行配置:
例:org.gradle.java.home=你的JDK17安装路径org.gradle.java.home=C:\Program Files\Java\jdk-17.0.9
- 打开项目的
3. 清理Gradle缓存
删除C:\Users\你的用户名.gradle\caches\7.5目录下的缓存文件夹(或直接删除整个.gradle\caches目录),避免残留的不兼容缓存影响构建。
4. 重新运行项目
在VS Code中点击运行按钮,或在项目根目录终端执行:
flutter run
内容的提问来源于stack exchange,提问作者Aryan
相关产品推荐
相关产品推荐

