Flutter v3.7.8执行flutter doctor提示无法确认Windows版本≥10的解决求助
解决Flutter Doctor无法识别Windows版本的问题
这个提示并非缺少组件,而是Flutter的Windows版本检测逻辑出现了读取故障,以下是可行的解决步骤:
- 先确认自身系统版本:按下
Win + R输入winver,弹出的窗口会显示你的Windows版本。如果版本低于10,必须升级系统才能满足Flutter的要求;如果已是10或以上,继续以下操作。 - 修复Flutter的版本检测逻辑:
- 找到你的Flutter安装目录,进入
packages/flutter_tools/lib/src/windows/路径,打开windows_version.dart文件。 - 定位到版本检测的核心代码(比如
_getWindowsVersion函数),可以修改逻辑强制返回符合要求的版本信息(例如直接返回WindowsVersion(major: 10, minor: 0, build: 19045),替换成你实际的版本号),或者调整检测方式为读取注册表(从HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion中读取CurrentMajorVersionNumber和CurrentMinorVersionNumber)。 - 修改完成后,删除Flutter的工具缓存:打开命令行执行
rmdir /s /q %USERPROFILE%\.flutter_tool_state,之后重启命令行再运行flutter doctor。
- 找到你的Flutter安装目录,进入
- 以管理员权限运行命令行:右键点击命令提示符或PowerShell,选择「以管理员身份运行」,再执行
flutter doctor——权限不足可能导致无法读取系统版本信息。 - 检查系统环境变量:确认
SystemRoot环境变量存在且值为C:\Windows(默认路径),如果缺失,手动添加该环境变量并设置正确路径。
内容的提问来源于stack exchange,提问作者Mouadh Ben
相关产品推荐
相关产品推荐

