每个版本的integration_test都依赖于sdk中的flutter_driver,而sdk依赖于crypto 2.1.5

And*_*iel 5 dart dart-pub flutter flutter-test

integration_test自从我尝试添加package 以来,我一直收到错误get_test,这主要是由于just_audio取决于crypto: ^3.0.0whileintegration_test取决于crypto: ^2.1.5。

我尝试在网上查看是否可以只安装没有 dev_dependency 的依赖项,但是基于此问题, flutter pub cli 工具似乎还不支持这一点。

这是我的pubspec.yaml

environment:
  sdk: ">=2.7.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter

  cupertino_icons: ^1.0.2
  share: ^2.0.1
  get:
  get_storage:
  shared_preferences: ^2.0.5
  audio_service: 0.17.0-nullsafety.0
  just_audio: ^0.7.4

dev_dependencies:
  flutter_test:
    sdk: flutter

  get_test: ^3.13.3
  integration_test: ^1.0.2+1
  test: ^1.14.4
Run Code Online (Sandbox Code Playgroud)

这是我收到的错误。

Because every version of integration_test depends on flutter_driver any from sdk which depends on crypto 2.1.5, every version of integration_test requires crypto 2.1.5.
And because just_audio 0.7.4 depends on crypto ^3.0.0 and no versions of just_audio match >0.7.4 <0.8.0, integration_test is incompatible with just_audio ^0.7.4.
So, because egy_fm_radio depends on both just_audio ^0.7.4 and integration_test ^1.0.2+1, version solving failed.
pub get failed (1; So, because egy_fm_radio depends on both just_audio ^0.7.4 and integration_test ^1.0.2+1, version solving failed.)
Run Code Online (Sandbox Code Playgroud)

小智 0

我认为这个特定问题可以通过将 Flutter SDK 更新到最新版本(>=2.2.0)来解决,但是如果有人遇到类似问题,请考虑使用依赖项覆盖来覆盖内置包的依赖项,integration_test例如flutter_driver。

dependency_overrides:
  crypto: ^3.0.0
Run Code Online (Sandbox Code Playgroud)

请注意,这涉及一些风险,并且pub会在依赖项解析期间向您显示警告。


归档时间:

查看次数:

1698 次

最近记录:

4 年,8 月 前