Dart SDK版本下限需≥2.12.0以启用空安全,求助解决报错
解决Dart空安全SDK约束报错问题
核心前提
启用空安全必须同时满足:
- 本地Dart/Flutter SDK版本 ≥2.12.0
pubspec.yaml中SDK约束下限 ≥2.12.0
分步解决
1. 修正pubspec.yaml的SDK约束
直接替换environment块的配置,确保SDK下限达标:
environment: sdk: '>=2.12.0 <4.0.0'
2. 彻底升级本地SDK
- Flutter项目执行:
确认输出中Dart版本≥2.12.0flutter upgrade flutter doctor - 纯Dart项目执行:
dart pub upgrade --major-versions dart --version
3. 排查并更新依赖
运行空安全兼容性检查,找出未适配的依赖:
# Flutter项目 flutter pub outdated --mode=null-safety # 纯Dart项目 dart pub outdated --mode=null-safety
将所有依赖升级到标注为null-safe的版本,再执行flutter pub get或dart pub get。
4. 清理缓存消除旧配置残留
# Flutter项目 flutter clean flutter pub get # 纯Dart项目 dart pub cache clean dart pub get
5. 检查IDE SDK配置
确保Android Studio/VS Code使用的SDK版本与本地升级后的版本一致:
- VS Code:打开命令面板(Ctrl+Shift+P),选择
Dart: Select SDK,选中≥2.12.0的版本 - Android Studio:
File → Settings → Languages & Frameworks → Dart,指定正确的SDK路径
内容的提问来源于stack exchange,提问作者Godfrey John
相关产品推荐
相关产品推荐

