运行flutter doctor/upgrade时遇TLS错误,无法升级Flutter工具求解决方案
解决Flutter工具升级时的TLS错误问题
以下是几个针对性的排查和修复步骤,你可以逐一尝试:
校验系统SSL证书有效性
浏览器访问正常不代表系统级证书存储能识别pub.dev的证书。手动导出浏览器中pub.dev的SSL证书,导入到系统受信任根证书库:- Windows:打开证书管理器,将证书导入「受信任的根证书颁发机构」
- macOS:打开钥匙串访问,把证书添加到「系统」钥匙串并设置完全信任
- Linux:将证书复制到
/usr/local/share/ca-certificates/,执行sudo update-ca-certificates更新证书列表
手动配置网络代理(若需)
若处于代理环境,Flutter可能无法自动继承浏览器代理设置,手动设置环境变量后重试:# Windows 命令行 set HTTP_PROXY=http://你的代理地址:端口 set HTTPS_PROXY=http://你的代理地址:端口 # macOS/Linux 终端 export HTTP_PROXY=http://你的代理地址:端口 export HTTPS_PROXY=http://你的代理地址:端口测试完成后可通过
set HTTP_PROXY=(Windows)或unset HTTP_PROXY(macOS/Linux)取消配置。切换Flutter pub国内镜像源
海外连接的TLS握手故障可通过切换国内镜像规避:# 配置国内镜像环境变量 export PUB_HOSTED_URL=https://pub.flutter-io.cn export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn也可以通过
flutter pub config set registry https://pub.flutter-io.cn直接设置pub源。临时关闭防火墙/安全软件
部分防火墙、杀毒软件会拦截Flutter工具的HTTPS请求,临时关闭后执行flutter doctor测试是否恢复正常。手动替换Flutter缓存文件
删除Flutter安装目录下bin/cache内的所有文件,从国内镜像站下载对应版本的Flutter工具包,解压后覆盖到cache目录,确保文件权限设置正确。检查系统TLS版本支持
Flutter工具要求TLS 1.2及以上版本:- Windows:打开Internet选项→高级,确认TLS 1.2、TLS 1.3已勾选
- macOS/Linux:执行
openssl s_client -connect pub.dev:443,查看返回的TLS版本,若过低需更新系统或OpenSSL库
内容的提问来源于stack exchange,提问作者digitalsuite.net
相关产品推荐
相关产品推荐

