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

接受Android许可证后Flutter框架崩溃问题求助

Flutter doctor --android-licenses 执行后崩溃但许可证已成功接受的问题解决

问题情况

刚格式化电脑重装了全套开发环境,包括Android Studio、OpenJdk 17.0.2和Flutter 3.27.1。执行flutter doctor --android-licenses接受Android许可证时,命令直接崩溃并输出一大段堆栈日志,但实际上所有许可证已经成功接受——flutter doctor显示无任何问题,而且Flutter应用在调试模式下也能正常运行。

大概率是这些原因

  1. 多Java版本冲突:系统里同时有Android Studio自带的JDK 21,以及给Flutter配置的OpenJDK 17,许可证命令执行时可能因为版本不兼容触发崩溃
  2. 许可证文件异常:虽然显示已接受,但SDK目录下的许可证文件可能存在损坏或格式问题,导致命令执行到最后出错
  3. 版本兼容性小问题:Flutter 3.27.1和Android SDK 35.0.1之间可能存在一些小版本适配问题

试试这些解决办法

1. 统一Java版本环境变量

  • 把系统环境变量JAVA_HOME设为D:\OpenJDK\17.0.2
  • 调整PATH变量,把%JAVA_HOME%\bin移到最顶部,确保终端优先用这个JDK
  • 重启终端后再跑一遍flutter doctor --android-licenses

2. 重置Android许可证文件

  1. 找到Android SDK的许可证目录:C:\Users\willi\AppData\Local\Android\sdk\licenses
  2. 删除这个目录下的所有文件
  3. 重新执行flutter doctor --android-licenses,逐个接受所有许可证

3. 调整Flutter版本

  • 升级到最新稳定版试试:
    flutter channel stable
    flutter upgrade
    
  • 要是想保留当前版本,也可以重新下载Flutter框架包,覆盖现有安装目录

4. 用Android Studio图形界面接受许可证

  • 打开Android Studio,进入设置 > 外观与行为 > 系统设置 > Android SDK > SDK工具
  • 勾选右下角的显示包详情,确保安装了最新版的Android SDK命令行工具
  • 切换到SDK许可协议页面,重新接受所有许可证,不用走命令行

补充

目前你的核心开发功能没受影响,应用能正常跑,flutter doctor也显示没问题,这个命令崩溃更多是命令行工具的小bug。但还是建议处理一下,避免后续操作可能踩坑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 05:53:10