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

执行flutter doctor --android-licenses遇LinkageError问题排查与解决

问题成因与解决方案

成因

错误里的class file version 61.0对应Java 17,55.0对应Java 11。你的终端当前使用的Java Runtime是Java 11,而Android SDK Manager(SdkManagerCli)是用Java 17编译的——低版本JVM无法加载高版本编译的类文件,因此抛出UnsupportedClassVersionError。

解决方案

方法1:使用Android Studio自带的JDK执行命令

Android Studio自带适配的JDK,直接指定路径即可解决:

  • 先找到自带JDK的路径:
    • Windows:C:\Program Files\Android\Android Studio\jbr
    • macOS:/Applications/Android Studio.app/Contents/jbr
    • Linux:/usr/local/android-studio/jbr
  • 终端临时切换JDK后执行命令:
    • Windows(PowerShell):
      $env:JAVA_HOME="C:\Program Files\Android\Android Studio\jbr"
      $env:Path="$env:JAVA_HOME\bin;$env:Path"
      flutter doctor --android-licenses
      
    • macOS/Linux:
      export JAVA_HOME=/Applications/Android Studio.app/Contents/jbr
      export PATH=$JAVA_HOME/bin:$PATH
      flutter doctor --android-licenses
      

方法2:全局升级Java到17及以上

若需要长期解决,直接安装Java 17并设为系统默认:

  1. 下载安装Java 17(OpenJDK或Oracle JDK均可)
  2. 配置系统环境变量:
    • 将JAVA_HOME设置为Java 17的安装路径
    • 把JAVA_HOME/bin添加到系统PATH的最前端
  3. 执行java -version确认输出为Java 17
  4. 重启终端后,再次执行flutter doctor --android-licenses

方法3:通过Android Studio图形界面处理许可证

嫌命令行麻烦的话,直接用图形界面操作:

  1. 打开Android Studio,点击Tools > SDK Manager
  2. 切换到SDK Tools标签,勾选Android SDK Command-line Tools (latest),点击Apply完成安装
  3. 安装结束后重启Android Studio,再尝试执行命令,或者直接在SDK Manager中找到许可证选项完成同意操作

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 19:57:11