升级项目Flutter版本遇异常:本地默认版本未生效
Flutter版本升级异常排查与解决
问题现象
- 全局Flutter版本已升级至
3.7.3:
flutter --version Flutter 3.7.3 • channel stable • https://github.com/flutter/flutter.git Framework • revision 9944297138 (4 days ago) • 2023-02-08 15:46:04 -0800 Engine • revision 248290d6d5 Tools • Dart 2.19.2 • DevTools 2.20.1
- 执行
flutter pub get时,系统仍调用旧版本2.8.0,导致依赖解析失败:
flutter pub get Running "flutter pub get" in xxx... Resolving dependencies... Because xxx depends on flutter >=3.0.0 which doesn't match any versions, version solving failed. pub get failed command: "/usr/local/Caskroom/flutter/2.8.0/flutter/bin/cache/dart-sdk/bin/dart __deprecated_pub --color --directory . get --example" pub env: { "FLUTTER_ROOT": "/usr/local/Caskroom/flutter/2.8.0/flutter", "PUB_ENVIRONMENT": "flutter_cli:get", "PUB_CACHE": "/Users/yyy/.pub-cache", } exit code: 1
解决方法
- 检查项目版本锁定文件:查看项目根目录是否存在
.flutter-version文件,若有则修改为3.7.3或直接删除该文件。同时确认pubspec.yaml中没有硬编码的旧版本约束。 - 重置终端环境变量:当前终端会话的
FLUTTER_ROOT指向了旧版本路径,执行以下命令临时切换:
若要永久生效,将上述命令添加到你的shell配置文件(如export FLUTTER_ROOT=/usr/local/Caskroom/flutter/3.7.3/flutter.bashrc、.zshrc)中。 - 修正IDE SDK配置:如果在IDE(Android Studio/VS Code)中执行命令,检查IDE设置里的Flutter SDK路径,确保指向
3.7.3的安装目录,而非旧版本路径。 - 版本管理工具切换:若使用
fvm等版本管理工具,执行fvm use 3.7.3为当前项目绑定目标版本。
内容的提问来源于stack exchange,提问作者karjan
相关产品推荐
相关产品推荐

