某些包版本的版本解决在 flutter 中失败

Version solving for certain package versions failed in flutter

我之前在使用不同的包时收到过几次这种错误,通常我只是尝试组合不同的版本,直到我最终得到一个有效的匹配。有没有办法知道哪些包版本是兼容的,而不是使用完全耗时且令人筋疲力尽的试错方法。

最初我虽然可能是其中一个包依赖于另一个包,就像在这种情况下可能 flutter_svg 依赖于 flutter_luban 的不同版本所以我的 pubspec 中的版本与它,但是 none 这些包在查看各自的包依赖关系后相互依赖。

pub get failed (1; So, because sakaHapa depends on both
flutter_svg ^0.17.4 and flutter_luban ^0.1.13, version solving
failed.)

您可以使用如下 'pub outdated' 命令。

https://dart.dev/tools/pub/cmd/pub-outdated

这是列的含义。

  • 当前
    您的包中使用的版本,如 pubspec.lock 中所记录。如果包不在 pubspec.lock 中,则值为 -.

  • 可升级
    您的 pubspec.yaml 文件允许的最新版本。这是 dart pub 升级解析到的版本。该值为 - 如果当前列中的值为 -.

  • 可解析
    与所有其他依赖项结合使用时可以解析的最新版本。如果 pubspec.yaml 中的所有版本约束都是无界的,则此版本对应于 dart pub upgrade 为您提供的版本。值 - 表示不需要该包。

  • 最新
    可用的最新版本的软件包,不包括预发行版,除非您使用选项 --prereleases.

flutter pub outdated