如何同时使用同一个包的不同版本?

yol*_*olo 4 twitter http dart instagram-api flutter

问题

我正在尝试在我的项目中使用dart_twitter_apiyoutube_apiinstagram_media

这些都需要http包,但版本不同。

因此,当我尝试安装时instagram_media,会发生错误。

由于 dart_twitter_api >=0.4.0 依赖于 http ^0.13.0 并且 instagram_media 的每个版本都依赖于 http ^0.12.0,因此 dart_twitter_api >=0.4.0 与 instagram_media 不兼容。

因此,由于 MyProject 依赖于 dart_twitter_api ^0.5.6+1 和 instagram_media any,版本解析失败。酒吧已完成,退出代码为 65

Pubspec.yaml

pubspec.yaml的在下面。

dependencies:
  flutter:
    sdk: flutter


  dart_twitter_api: ^0.5.6+1
  youtube_api: ^1.0.4

  http: any

  # ..... other pubs
Run Code Online (Sandbox Code Playgroud)

所需的 http 版本

包裹 所需的http版本
dart_twitter_api >=0.4.0 ^0.13.0
youtube_api 1.0.4 ^0.13.3
instagram_media >= 任何 ^0.12.0

奇怪的是,dart_twitter_apiyoutube_api可以一起生活的时候,只有当我这样做的时候flutter pub add instagram_media,才会出现这个错误。

我想做的事

正如我之前所说,我想在一个项目中使用dart_twitter_apiyoutube_apiinstagram_media

如何同时使用http ^0.13.3and ?http ^0.12.0

像下面这样;

dependencies:
  flutter:
    sdk: flutter

  http: ^0.13.3
  http: ^0.12.0
Run Code Online (Sandbox Code Playgroud)

yol*_*olo 6

通过编辑pubspec.yaml像;

dependency_overrides:
  http: ^0.13.4
Run Code Online (Sandbox Code Playgroud)

我可以instagram_media对我的项目提出建议。