升级Dart与Flutter版本后,如何临时跳过空安全校验?
临时跳过Dart空安全校验的操作方案
单次运行临时跳过(不修改项目配置)
- 命令行启动项目时,在原有命令后追加
--no-sound-null-safety参数,完整示例:flutter run --no-sound-null-safety - 构建打包场景同样追加该参数,示例:
flutter build apk --no-sound-null-safety - IDE(VS Code/Android Studio)运行需进入对应运行配置,在「额外程序参数」栏填入
--no-sound-null-safety,保存后启动即可生效。
项目级默认跳过(修改配置后全量生效)
- 打开项目根目录下的
pubspec.yaml,修改environment块的Dart SDK版本约束,将版本范围调整为低于空安全启用阈值2.12.0,示例配置:
environment: sdk: ">=2.11.0 <3.0.0"
- 执行
flutter pub get同步依赖后,项目启动默认不触发空安全校验。 - 若需消除Dart Analysis的空安全类报错,打开项目根目录的
analysis_options.yaml,添加如下规则:
analyzer: enable-experiment: - no-null-safety errors: missing_required_param: ignore missing_return: ignore invalid_null_aware_operator: ignore
该方案为应急操作,后续建议排查依赖版本兼容问题后,再迁移至正式空安全规范。
内容的提问来源于stack exchange,提问作者Emmanuel Montoya
相关产品推荐
相关产品推荐

