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

Flutter项目构建失败:无法打开cp_settings类缓存及JDK兼容问题

Flutter项目构建失败:Unsupported class file major version 65

报错信息

FAILURE: Build failed with an exception.

  • 问题原因:无法打开配置文件D:\Projects\Flutter_Projects\android\settings.gradle对应的cp_settings通用类缓存(缓存路径:C:\Users\abc.d.gradle\caches\7.6.3\scripts\89h1b0pgkuoa5c28iqf1kcknq)
  • 核心异常:BUG! 源单元_BuildScript_的语义分析阶段抛出异常:Unsupported class file major version 65
  • 官方建议操作:
    • 执行构建时添加--stacktrace参数获取堆栈跟踪
    • 使用--info或--debug参数查看详细日志
    • 用--scan参数生成完整分析报告
  • 构建耗时:6秒后失败

环境配置

  • Flutter SDK: 3.22.2
  • Android Studio: 2024.2
  • JDK: 17.0.7
  • Gradle: 7.6.4

问题分析

Class file major version 65对应Java 21,但Gradle 7.6.4的最高兼容版本为Java 17。尽管本地JDK为17.0.7,Android Studio 2024.2默认配置可能引入了Java 21相关的编译逻辑或依赖,导致Gradle无法解析高版本类文件。

解决方案

1. 修正Android Studio的JDK配置

  • 打开Android Studio,进入File > Project Structure > SDK Location
  • 确保JDK location指向本地JDK 17的安装路径,而非Java 21

2. 强制Gradle使用指定JDK

在项目的android/gradle.properties文件中添加以下配置:

org.gradle.java.home=你的JDK17绝对路径(例如:C:\\Program Files\\Java\\jdk-17.0.7)

3. 清理Gradle缓存

删除缓存目录C:\Users\abc.d.gradle\caches\7.6.3,重新执行flutter build命令

4. 升级Gradle版本(可选)

若上述方法无效,将Gradle升级至8.0及以上版本(Gradle 8.0+原生支持Java 21),同时更新android/build.gradle中的Gradle插件版本以适配。

内容的提问来源于stack exchange,提问作者Chintan Gabani

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 18:43:23