Dart 发布错误:analyzer上的版本约束不兼容

Dart 发布错误:analyzer上的版本约束不兼容,dart,constraints,incompatibility,dart-pub,Dart,Constraints,Incompatibility,Dart Pub,我有一个很奇怪的问题。在添加新依赖项之前,我有一些依赖项可以很好地工作,但在这种特定情况下,只要我添加一个新的依赖项async_Wait,我就会在使用pub-get时收到analyzer错误上不兼容的版本约束。奇怪的是:async_await不是一个不兼容的约束 发布获取失败,[1]正在解析依赖项。。。不兼容版本 对analyzer的限制: -angular 1.0.0取决于版本>=0.15.0=0.15.0=0.13.0只是没有一组依赖项,所有版本约束都适用。 我通过确定一些依赖项的版本来解决

我有一个很奇怪的问题。在添加新依赖项之前,我有一些依赖项可以很好地工作,但在这种特定情况下,只要我添加一个新的依赖项async_Wait,我就会在使用pub-get时收到analyzer错误上不兼容的版本约束。奇怪的是:async_await不是一个不兼容的约束

发布获取失败,[1]正在解析依赖项。。。不兼容版本 对analyzer的限制:
-angular 1.0.0取决于版本>=0.15.0=0.15.0=0.13.0只是没有一组依赖项,所有版本约束都适用。 我通过确定一些依赖项的版本来解决这些问题,以使pub-get/pub升级更容易,并添加一些依赖项覆盖来强制解决一些差异。 逐个添加覆盖,直到不再出现错误

在你的情况下,我不得不添加相当多的覆盖

依赖项覆盖: 分析器:^0.22.4 巴巴多斯:^0.15.2+2 变压器代码:^0.2.3+2 di:^3.3.3 路由层次:^0.6.1
通过这种方式,您可以强制软件包使用未经测试的依赖项,但除了更新依赖项本身以使用较新版本之外,这是解决此问题的唯一方法,但这通常由其他人控制。

没有一组依赖项适用于所有版本约束。 我通过确定一些依赖项的版本来解决这些问题,以使pub-get/pub升级更容易,并添加一些依赖项覆盖来强制解决一些差异。 逐个添加覆盖,直到不再出现错误

在你的情况下,我不得不添加相当多的覆盖

依赖项覆盖: 分析器:^0.22.4 巴巴多斯:^0.15.2+2 变压器代码:^0.2.3+2 di:^3.3.3 路由层次:^0.6.1
通过这种方式,您可以强制软件包使用未经测试的依赖项,但除了更新依赖项本身以使用较新版本之外,这是解决此问题的唯一方法,但这通常由其他人控制。

Pub的版本解算器正在对所有依赖项中的所有版本约束进行全局分析。不仅如此,每个版本的依赖项都有不同的约束

这意味着约束失败可以是非本地的。不仅仅是async_await的约束导致了问题。可能是:

async_wait在foo上添加了一个约束。 这会迫使您使用不同版本的foo。 这反过来又为您提供了一组来自foo的不同约束。 这些反过来会调整其他依赖项的一些版本。 这将导致其他不同的约束条件。。。 等等 实际上,我们最近看到的大多数错误似乎都将analyzer包作为其关键。analyzer经常更新这个包,或者至少更新了一段时间,并且经常更改它的次要版本。这意味着有很多包依赖于不相交的analyzer版本集


正如@Günter所建议的,解决方法是覆盖几个依赖项,这样可能会导致自身的问题。它基本上将pub get time故障转化为可能的运行时故障。

pub的版本求解器正在对所有依赖项中的所有版本约束进行全局分析。不仅如此,每个版本的依赖项都有不同的约束

这意味着约束失败可以是非本地的。不仅仅是async_await的约束导致了问题。可能是:

async_wait在foo上添加了一个约束。 这会迫使您使用不同版本的foo。 这反过来又为您提供了一组来自foo的不同约束。 这些反过来会调整其他依赖项的一些版本。 这将导致其他不同的约束条件。。。 等等 实际上,我们最近看到的大多数错误似乎都将analyzer包作为其关键。analyzer经常更新这个包,或者至少更新了一段时间,并且经常更改它的次要版本。这意味着有很多包依赖于不相交的analyzer版本集


正如@Günter所建议的,解决方法是覆盖几个依赖项,这样可能会导致自身的问题。它基本上把pub-get-time故障变成了可能的运行时故障。

请发布您的pubspec。yaml@GünterZöchbauer请参见编辑。我用我的答案中的依赖覆盖进行了尝试,结果成功了。你还收到错误吗?你能发布你的pubspec吗。yaml@GünterZöchbauer请参见编辑。我用我的答案中的依赖覆盖进行了尝试,结果成功了。你还是有错误吗?
name: aristadart
description: A sample web application
dependencies:
  angular: 1.0.0
  browser: any
  di: any
  fp: any
  http: any
  mongo_dart: any
  redstone: any
  redstone_mapper: any
  redstone_mapper_mongo: any
  shelf_static: any


transformers:
- redstone_mapper
- angular:
    html_files:
    - lib/components/login/login.html
    - lib/components/login/nuevo_usuario.html
    - lib/components/home/home.html
    - lib/components/evento/evento.html
    - lib/components/vista/vista.html