Flutter SDK版本识别异常:执行flutter --version版本不符
Flutter SDK版本显示偏差的原因及解决方式
注:该版本跳变不属于Flutter官方的新版本编号规则调整,属于本地环境配置异常导致的版本识别偏差。
核心触发原因
- 静默自动更新触发版本跳变:最初安装的Flutter 2.0.6如果配置为master渠道,终端启动、IDE加载时会自动校验拉取对应渠道的最新预发布构建,无感知完成版本升级,最终显示为你看到的master渠道最新的2.3.0开发版,和最初安装的稳定版版本存在偏差。
- 多SDK路径优先级冲突:本地存在多份Flutter SDK安装目录,系统环境变量的路径排序发生变化后,终端调用的flutter命令不再指向最初安装的2.0.6目录,而是优先调用了其他位置的SDK(比如IDE自动捆绑下载的SDK包)。
- IDE与终端的SDK配置不统一:IDE中手动配置的Flutter SDK路径没有和系统环境变量保持一致,单独指向了另一份已经更新过的SDK目录,就会出现编辑器显示版本和终端显示版本不一致的问题。
排查解决步骤
- 先执行对应系统的路径校验命令:macOS/Linux执行
which flutter,Windows执行where flutter,确认当前终端调用的flutter可执行文件所在目录,是否为你最初安装2.0.6的目录。如果路径指向其他目录,修正环境变量中的SDK路径优先级,将正确的2.0.6目录移到路径列表最上方,删除冗余的SDK路径配置。 - 路径修正后,进入正确的2.0.6 SDK目录,执行
git checkout 2.0.6切回对应版本,再执行flutter channel stable将SDK渠道切换为稳定版,关闭自动静默更新机制,避免后续无感知拉取其他渠道的版本包。 - 打开IDE的Flutter SDK设置页面,将SDK路径手动指定为和终端环境变量完全一致的2.0.6目录,不要选择IDE自动推荐的预下载SDK路径,重启IDE后即可正常识别正确的SDK版本。
内容的提问来源于stack exchange,提问作者Programmerz
相关产品推荐
相关产品推荐

