Flutter path_provider 和 sdk 版本不匹配

时间:2021-03-08 14:43:48

标签: flutter dart

当前 Dart SDK 版本为 2.10.5。

因为 path_provider 2.0.1 需要 SDK 版本 >=2.12.0-259.9.beta <3.0.0 并且没有 path_provider 版本匹配 >2.0.1 <3.0.0,path_provider ^2.0.1 被禁止。 所以,因为harmonoid依赖path_provider ^2.0.1,版本求解失败。 pub get failed (1; 所以,因为harmonoid依赖path_provider ^2.0.1,版本求解失败。)

我如何解决这个错误?这是我的 pubspec.yaml

version: 1.0.0+1

environment:
  sdk: ">=2.8.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter
  animations: ^1.1.2
  provider: ^4.3.3
  assets_audio_player:
    git: https://github.com/alexmercerind/Flutter-AssetsAudioPlayer
  media_metadata_retriever: ^0.0.2+1
  http: ^0.12.2
  path: ^1.7.0
  path_provider: ^2.0.1
  flutter_local_notifications: ^3.0.3
  url_launcher: ^5.5.0
  permission_handler: ^5.0.1+1
  share: ^0.6.5+4
  palette_generator: ^0.2.3
  implicitly_animated_reorderable_list: ^0.3.2

dev_dependencies:
  flutter_test:
    sdk: flutter

错误

enter image description here

2 个答案:

答案 0 :(得分:1)

我的 Dart SDK 版本是 2.12.0,Flutter 版本是 2.0.1。我创建了一个新项目并复制了您的所有依赖项。该项目没有任何问题。

为了节省您的时间,我建议使用这些命令或此 Flutter 2 升级到稳定频道和 link

flutter channel stable
flutter upgrade

答案 1 :(得分:0)

如果您还不想迁移 Flutter 和 Dard SDK 版本,

我建议您尝试从行中删除该版本:

  • path_provider: ^2.0.1 所以它看起来像这样:path_provider:
  • 再次运行:pub get
  • 再次运行您的项目

最终我会建议迁移到最新版本的 SDK 并升级您的所有依赖项。这只是一个临时解决方案。