You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用FVM运行Flutter 3.3.10时遇Dart版本过高错误求助

问题:FVM管理Flutter 3.3.10运行时提示Dart语言版本过高错误

问题详情

在MacOS环境下使用FVM管理Flutter SDK(版本3.3.10),执行fvm flutter run时出现如下错误:

Error: The specified language version is too high. The highest supported language version is 2.18.

执行dart --version显示Dart SDK版本为2.18.6(stable),该版本与当前Flutter版本匹配。已通过自定义清理脚本清理项目缓存,也执行了dart pub cache clean清理全局Dart缓存,但问题仍未解决。清理脚本如下:

# Run Flutter commands
fvm flutter clean
fvm flutter pub cache repair
fvm flutter pub get

# Change to the ios directory
cd ios/

# Remove the .symlinks and Pods folders
rm -rf .symlinks
rm -rf Pods

# Run CocoaPods commands
pod deintegrate
pod cache clean --all
pod repo update
pod install

可行解决建议

  • 检查并修改项目的Dart语言版本配置
    打开项目根目录的pubspec.yaml,找到environment字段,确认其中的Dart SDK版本范围是否高于2.18。例如如果配置是:

    environment:
      sdk: '>=2.19.0 <3.0.0'
    

    请将其修改为与当前Dart版本兼容的范围,比如:

    environment:
      sdk: '>=2.18.0 <3.0.0'
    

    保存后重新执行fvm flutter pub get。

  • 排查依赖包的语言版本冲突
    部分依赖包可能在自身配置中要求更高的Dart版本,导致整体项目语言版本不兼容。执行fvm dart pub outdated查看所有依赖的版本状态,替换那些明确要求Dart 2.19+的依赖为兼容Flutter 3.3.10的旧版本。如果无法快速定位冲突依赖,可以尝试临时注释部分依赖,逐步排查出引发问题的包。

  • 验证FVM的环境上下文正确性
    执行fvm flutter --version确认当前终端使用的Flutter和Dart版本是否为3.3.10和2.18.6。若版本不符,说明FVM的环境变量未正确生效,可尝试重新打开终端,或执行fvm use 3.3.10 --global(需根据需求选择是否全局应用该版本)。

  • 清理FVM管理的Flutter SDK缓存
    除了项目缓存,清理FVM对应版本SDK的自带缓存:

    cd ~/fvm/versions/3.3.10
    flutter clean
    flutter pub cache clean
    

    完成后回到项目根目录,重新执行fvm flutter pub get。

  • 清理iOS端编译缓存
    若问题出现在iOS编译阶段,打开Xcode执行Product > Clean Build Folder,或者删除iOS目录下的Runner.xcworkspace文件,再重新运行原清理脚本中的iOS相关步骤。

内容的提问来源于stack exchange,提问作者Sören Nehls

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 04:43:21