求助:如何将Dart SDK从3.4.1降级至≥2.12.0且<3.4.0
降级Dart SDK到指定版本范围的方法
先明确:pubspec.yaml的sdk字段作用
pubspec.yaml里的sdk: '>=2.12.0 <3.4.0'只是项目的版本约束,用来限制运行项目的Dart版本范围,但不会主动修改你本地安装的Dart SDK版本,所以修改这个文件无法实现降级本地SDK的目的。
情况1:使用独立Dart SDK(非Flutter自带)
方法1:手动下载替换
- 选择符合
≥2.12.0且<3.4.0的具体版本(比如3.3.0、3.1.5、2.19.6等) - 下载对应系统的SDK压缩包
- 找到当前Dart SDK安装目录:
- Windows:通常是
C:\dart-sdk - Mac/Linux:通常是
/usr/lib/dart-sdk或自定义路径
- Windows:通常是
- 备份原SDK目录,将下载的新SDK解压替换原目录
- 验证版本:终端输入
dart --version确认版本符合要求
方法2:用版本管理器(推荐,方便多版本切换)
- Windows(Chocolatey):
替换choco install dart-sdk --version=3.3.03.3.0为你需要的具体版本 - Mac/Linux(Homebrew):
brew install dart@3.3.0 - 跨平台(asdf):
# 先安装asdf并添加dart插件 asdf plugin add dart # 安装指定版本 asdf install dart 3.3.0 # 设置全局使用该版本 asdf global dart 3.3.0
情况2:使用Flutter自带的Dart SDK
Flutter每个版本绑定固定的Dart版本,需通过降级Flutter来匹配目标Dart版本:
- 参考对应关系选Flutter版本(确保绑定的Dart在目标范围内):
- Flutter 3.13.x → Dart 3.1.x
- Flutter 3.10.x → Dart 3.0.x
- Flutter 3.7.x → Dart 2.19.x
- 执行降级命令:
替换flutter downgrade 3.13.93.13.9为你选中的Flutter版本 - 验证版本:输入
flutter dart --version确认Dart版本符合要求
内容的提问来源于stack exchange,提问作者Abbas Ali
相关产品推荐
相关产品推荐

