使用FVM构建Flutter项目失败的问题求助
问题解决方案
核心问题
你的问题根源是FVM的Dart环境未被正确注入当前项目/终端会话,导致项目仍调用全局Dart(版本低于3.1.2),与FVM使用的Flutter 3.13.4依赖的Dart版本不匹配。
分步解决步骤
1. 确保项目正确绑定FVM版本
在项目根目录执行以下命令,强制绑定指定Flutter版本:
fvm use 3.13.4 --force
执行fvm status确认项目已绑定到3.13.4版本。
2. 调整终端环境变量优先级
让FVM的Flutter/Dart路径优先于全局路径:
- 如果你用zsh,编辑
~/.zshrc,添加:export PATH="$HOME/fvm/versions/3.13.4/bin:$PATH" export PATH="$HOME/fvm/default/bin:$PATH" - 如果你用bash,编辑
~/.bash_profile或~/.bashrc,添加上述内容。 - 执行
source ~/.zshrc(或对应bash配置文件)刷新环境变量。 - 验证路径:执行
which dart和which flutter,确认输出为FVM目录下的路径(例如/Users/你的用户名/fvm/versions/3.13.4/bin/dart)。
3. 彻底清理并重建项目依赖
执行以下命令完全重置项目依赖:
fvm flutter clean rm -rf .dart_tool rm pubspec.lock fvm flutter pub get
针对Xcode,额外执行:打开Xcode → 点击Product → Clean Build Folder(快捷键Cmd+Shift+K),再重新编译。
4. 确认pubspec.yaml的SDK约束
保持Flutter 3.13.4对应的Dart版本约束:
environment: sdk: '>=3.1.2 <4.0.0'
5. 修复Xcode语言版本错误
完成上述步骤后,重新生成的dart_plugin_registrant.dart会自动适配FVM的Dart版本。如果仍有问题:
- 执行
fvm flutter open,用FVM绑定的版本打开Xcode项目,确保Xcode使用正确的Flutter/Dart环境。 - 检查Xcode配置:选择Runner →
Build Settings→ 搜索DART_VERSION,确认值为3.1.2。
内容的提问来源于stack exchange,提问作者BeniaminoBaggins
相关产品推荐
相关产品推荐

