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

Flutter执行pub get报错:依赖版本冲突无法解决求助

Flutter pub get 依赖版本解析失败求助

执行flutter pub get时遭遇依赖版本冲突,错误信息如下:

Because google_maps_webservice 0.0.20-nullsafety.5 depends on http ^0.13.0 and no versions of google_maps_webservice match
0.0.20-nullsafety.5 <0.1.0, google_maps_webservice ^0.0.20-nullsafety.5 requires http ^0.13.0.
And because google_maps_place_picker_mb >=2.0.0-mb.14 depends on google_maps_webservice ^0.0.20-nullsafety.5, google_maps_place_picker_mb
=2.0.0-mb.14 requires http ^0.13.0.
So, because explore_places depends on both http ^1.1.0 and google_maps_place_picker_mb ^3.0.1, version solving failed.

我的依赖配置如下:

依赖覆盖(dependency_overrides)

dependency_overrides:
  http: 1.1.0
  flutter_html: 2.2.1
  xml: ^6.3.0
  wakelock: ^0.6.2
  win32: ^5.0.2
  flutter_math_fork: ^0.7.1
  flutter_svg: ^1.0.0

谷歌地图相关依赖

maps_launcher: ^2.2.0
  geolocator: ^9.0.2
  google_maps_flutter: ^2.2.7

  google_maps_place_picker_mb: 3.0.1

网络相关依赖

http: ^1.1.0
  connectivity_plus: ^4.0.1
  cached_network_image: ^3.2.3
  html: ^0.15.3
  package_info_plus: ^4.0.1
  flutter_html: 2.2.1

已尝试以下操作但未解决问题:

  • 切换到Flutter稳定频道:flutter channel stable
  • 执行依赖升级:flutter pub upgrade
  • 重新获取依赖:flutter pub get

解决方案

问题核心是google_maps_place_picker_mb:3.0.1依赖的google_maps_webservice版本锁定了http ^0.13.0,但项目直接依赖http ^1.1.0且依赖覆盖强制指定http:1.1.0,导致版本冲突。提供两种可行方案:

方案1:降级http版本

将项目中http的依赖版本改为^0.13.0,同时移除依赖覆盖里的http:1.1.0配置,之后重新执行flutter pub get。

修改后的网络相关依赖:

http: ^0.13.0
  connectivity_plus: ^4.0.1
  cached_network_image: ^3.2.3
  html: ^0.15.3
  package_info_plus: ^4.0.1
  flutter_html: 2.2.1

修改后的依赖覆盖:

dependency_overrides:
  flutter_html: 2.2.1
  xml: ^6.3.0
  wakelock: ^0.6.2
  win32: ^5.0.2
  flutter_math_fork: ^0.7.1
  flutter_svg: ^1.0.0

方案2:强制覆盖google_maps_webservice的http依赖

若不想降级http版本,可在dependency_overrides中强制让google_maps_webservice适配http:1.1.0,添加如下配置:

dependency_overrides:
  http: 1.1.0
  google_maps_webservice:
    git:
      url: https://github.com/lejard-h/google_maps_webservice.git
      ref: nullsafety # 选择支持http 1.x的分支/版本
  # 保留原有其他覆盖配置

注意:强制覆盖可能引发潜在兼容性问题,需测试谷歌地图相关功能是否正常。


内容的提问来源于stack exchange,提问作者chanwoo Hwang

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 20:40:27