Flutter环境下如何将Dart版本降级至1.x版本
Flutter/Dart降级(无空安全版本)操作指南
flutter downgrade命令未生效的核心原因是该命令仅支持降级到本地已缓存过的历史版本,若你本地之前未安装过对应版本,执行后不会产生任何变化。
操作步骤
方法一:官方命令降级(优先选用)
- 先清理本地缓存与项目残留文件:
- 进入你的项目根目录执行
flutter clean - 执行
flutter precache --force强制刷新Flutter官方版本列表
- 进入你的项目根目录执行
- 执行降级命令,注意:Dart 1.x已经停止维护超过3年,存在大量安全漏洞,且无公开稳定的官方下载源。你可以选择Flutter 1.22.6版本,该版本绑定的Dart 2.10.5版本完全不包含空安全特性,可完美适配所有旧版非空安全代码,降级命令为
flutter downgrade 1.22.6 - 降级完成后执行
flutter --version、dart --version确认版本匹配即可
方法二:手动切换SDK(方法一失效时使用)
- 找到本地Flutter SDK的安装根目录,在该目录下打开终端执行如下命令:
- 拉取所有官方版本标签:
git fetch --tags - 切换到目标版本标签:
git checkout 1.22.6 - 执行
flutter doctor,按照终端提示补全缺失的环境依赖即可
- 拉取所有官方版本标签:
项目适配操作
降级完成后需要调整项目配置适配旧版SDK:
- 打开项目根目录下的
pubspec.yaml文件,修改环境配置区间如下:
environment: sdk: ">=2.10.0 <2.12.0"
- 执行
flutter pub get重新拉取适配非空安全版本的依赖包
提示:无需强制降级到Dart 1.x版本,上述方案提供的版本已经完全满足非空安全代码的运行需求,且稳定性远高于已经停服的Dart 1.x版本。
内容的提问来源于stack exchange,提问作者Dalon
相关产品推荐
相关产品推荐

