Flutter

Flutter 库冲突问题解决

2021-10-12  本文已影响0人  a_simple_coder

从Git拉Flutter项目到本地后,在Android Studio中执行:

flutter pub get

报 : pub get failed (1; So, because XXXX(项目名) depends on both flutter_cache_manager 1.2.2 and path_provider ^1.6.24, version solving failed.) 版本求解失败:

image.png

从上图可知:requires SDK version >=2.10.0-0.0 <2.12.0 ,而我本地 Dart SDKversion 却是2.14.0(我的Flutter是2.5.2,2.0以下没有这个问题),表明该library 与本地Dart版本不兼容,如果我们不想升级本地SDK环境,那么就可以按照以下步骤来进行正确版本选择:

第一步:在pubspec.yaml文件中找到这个依赖,

dependencies
     
  flutter_cache_manager: 1.2.2
  path_provider: ^1.6.24

这时,我们将版本换位any,

dependencies
     
  flutter_cache_manager: any
  path_provider: any

第二步:命令执行 flutter pub get

第三步:打开pubspec.lock,这个文件是生成我们依赖的所有清单文件,可以看到,

  flutter_cache_manager:
    dependency: "direct main"
    description:
      name: flutter_cache_manager
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.4.2"
  path_provider:
    dependency: "direct main"
    description:
      name: path_provider
      url: "https://pub.flutter-io.cn"
    source: hosted
    version: "1.6.9"

版本号变为了1.4.21.6.9,这就是实际引用的版本号,

第四部:将1.4.21.6.9替换刚才设置any的位置,(修改其中一个即可。可以升flutter_cache_manager版本 或降path_provider版本,我这里是升flutter_cache_manager版本)

dependencies
     
  # flutter_cache_manager: 1.2.2
  # path_provider: ^1.6.24

  flutter_cache_manager: 1.4.2
  path_provider: ^1.6.24

这样就完美解决了这个问题。

上一篇下一篇

猜你喜欢

热点阅读