运行flutter doctor --android-licenses报port out of range:-1异常如何解决
问题根因
该报错是Android SDK Manager读取到无效的代理配置导致,代理端口被设置为非法值-1,触发了Java端口校验逻辑异常,无法完成初始化。
解决方案
按以下顺序排查即可解决:
- 第一步:清空当前终端的代理环境变量
- Windows 环境(CMD/PowerShell)执行:
set http_proxy= set https_proxy= - Mac/Linux 环境执行:
unset http_proxy https_proxy
flutter doctor --android-licenses验证是否恢复。 - Windows 环境(CMD/PowerShell)执行:
- 第二步:清理.android目录下的残留代理配置
进入用户目录下的.android文件夹:- Windows路径:
C:\Users\你的系统用户名\.android\ - Mac/Linux路径:
~/.android/
找到目录下的gradle.properties、androidtool.cfg、sdkmanager.cfg三个文件,逐个打开删除所有包含proxy的配置行(例如http.proxyPort=-1、https.proxyHost=127.0.0.1这类内容),保存后重试命令。
- Windows路径:
- 第三步:重置Android Studio的代理设置
打开已安装的Android Studio,进入「Settings -> Appearance & Behavior -> System Settings -> HTTP Proxy」,选择「No proxy」后保存设置,重启Android Studio后再执行许可命令。 - 第四步:兜底执行方案
上述操作都无效的话,直接调用原生sdkmanager工具处理许可:- 执行
flutter config --android-sdk获取你的Android SDK本地路径 - 进入SDK路径下的
cmdline-tools/latest/bin/目录 - 执行
./sdkmanager --licenses(Windows环境执行sdkmanager.bat --licenses),按提示输入y同意所有许可即可,完成后运行flutter doctor验证状态。
- 执行
内容的提问来源于stack exchange,提问作者phancuongviet
相关产品推荐
相关产品推荐

