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

Flutter升级后执行flutter pub get遇空安全版本兼容错误求助

Flutter升级后flutter pub get失败问题解决

当前环境

  • Flutter 3.10.6
  • Dart 3.0.6
  • DevTools 2.23.1

执行flutter pub get时的错误提示

当前Dart SDK版本为3.0.6。
由于flutter_app依赖的flutter_staggered_grid_view >=0.1.1 <0.4.0-nullsafety.1不支持空安全,版本解析失败。
启用空安全要求"sdk: '>=1.19.0 <3.0.0'"的下限必须为2.12.0或更高。
进程以退出码1结束。

项目pubspec.yml配置

name: Flutter App
description: A new Flutter project.
    version: 1.0.0+1

environment:
  sdk: ">=2.12.0 <3.0.0"


dependencies:
  flutter:
    sdk: flutter
  shared_preferences: ^2.0.15
  provider: ^6.0.3
  flutter_svg: ^1.1.4
  image_picker: ^0.8.6
  flutter_launcher_icons: ^0.9.2
  smooth_page_indicator: ^1.0.0+2
  carousel_slider: ^4.1.1
  firebase_core: ^1.20.1
  cloud_firestore: ^3.4.4
  firebase_auth: ^3.6.3
  flutter_facebook_auth: ^4.4.1
  google_sign_in: ^5.4.1
  flutter_iconly: ^1.0.2
  flutter_local_notifications: ^9.6.1
  loader_overlay: ^2.0.7
  flutter_spinkit: ^5.1.0
  get:
  lottie:
  json_annotation:
  google_fonts: ^2.3.1
  flutter_secure_storage: ^5.0.2
  flutter_staggered_grid_view: ^0.3.2
  edge_alerts: ^0.0.1
  mongo_dart: ^0.7.4+1
  easy_localization: ^3.0.2-dev
  geoflutterfire: ^3.0.3
  flutter_native_image: ^0.0.6+1
  firebase_storage: ^10.3.6
  firebase_messaging: ^12.0.3
  flutter_shapes:
  crypt:
  progress_dialog:
  cached_network_image: ^3.2.1


  cupertino_icons: ^1.0.2

dev_dependencies:
  firebase_core_platform_interface: 4.5.1
  flutter_test:
    sdk: flutter

  flutter_lints: ^1.0.0


flutter:
  uses-material-design: true

  assets:
    - assets/icons/
    - assets/icons/account_icons/
    - assets/icons/departments/
    - assets/images/
    - assets/animations/

问题原因及解决办法

核心原因

  1. Dart 3.0.6强制要求所有依赖支持空安全,当前使用的flutter_staggered_grid_view: ^0.3.2属于不支持空安全的旧版本(版本范围<0.4.0-nullsafety.1),导致版本解析失败。
  2. 项目environment中的SDK范围">=2.12.0 <3.0.0"与Dart 3.0不兼容,需要更新适配。

具体修复步骤

  1. 升级flutter_staggered_grid_view到空安全版本
    将pubspec.yml中的flutter_staggered_grid_view: ^0.3.2替换为兼容空安全的稳定版:

    flutter_staggered_grid_view: ^0.6.2
    
  2. 更新SDK环境范围
    修改environment字段,适配Dart 3.x:

    environment:
      sdk: ">=3.0.0 <4.0.0"
    
  3. 排查并升级其他依赖
    执行flutter pub outdated命令,检查所有依赖的兼容性,将老旧依赖升级到支持Dart 3.x的版本:

    • 无指定版本的依赖(如get、lottie)建议明确标注兼容版本,避免版本冲突
    • 例如flutter_svg: ^1.1.4可升级至^2.0.7,image_picker: ^0.8.6可升级至^1.0.4
  4. 重新安装依赖
    执行以下命令完成依赖同步:

    flutter pub get
    

内容的提问来源于stack exchange,提问作者Abdelkhalek Haddany

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 06:16:01