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

执行flutter doctor --android-licenses遇Java版本不兼容问题求解

解决 flutter doctor --android-licenses 出现 UnsupportedClassVersionError 的方案

错误核心原因:sdkmanager 工具是用JDK17(类文件版本61.0)编译的,但当前运行它的JDK版本仅支持到JDK11(类文件版本55.0)。虽然你安装了JDK21,但实际调用时可能没用到正确的JDK版本,或者存在SDK工具版本与JDK的适配冲突。

以下是具体解决步骤:

  • 确认终端使用的JDK版本
    打开命令提示符,执行:

    java -version
    

    如果输出不是JDK21,说明环境变量配置有误。把JDK21安装目录下的bin路径移到系统环境变量PATH的最顶端,确保优先调用JDK21。

  • 清理冲突的Android SDK命令行工具
    前往C:\Users\Dan\AppData\Local\Android\sdk\cmdline-tools目录,删除除了latest以外的旧版本文件夹(比如6.0、7.0这类)。旧版工具依赖低版本JDK,会和新版工具产生冲突。

  • 强制指定sdkmanager使用JDK21
    打开C:\Users\Dan\AppData\Local\Android\sdk\cmdline-tools\latest\bin\sdkmanager.bat文件,在文件开头添加一行(替换为你的JDK21实际安装路径):

    set JAVA_HOME=C:\Program Files\Java\jdk-21
    

    保存后重新运行flutter doctor --android-licenses。

  • 重启终端/电脑
    环境变量修改后可能未即时生效,重启终端或电脑后再执行命令测试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 08:12:42