flutter软件包失败取决于sdk中的flutter_test,这需要SDK版本<2.0.0,版本解析失败

时间:2018-07-23 08:35:29

标签: sdk flutter packages

我创建一个flutter项目,并运行flutter packeages get,输出如下: [第二]扑扑包得到 等待另一个颤振命令释放启动锁... 在第二个运行“ flutter软件包获取” ... Dart SDK当前的版本为 HttpServletRequest request = ServletActionContext.getRequest(); String url = request.getRequestURI();

2.0.0-dev.63.0.flutter-4c9689c1d2

Because second depends on flutter_test any from sdk which requires SDK version <2.0.0, version solving failed. pub get failed (1) exit code 1

flutter doctor -v

我用来创建项目的IDE是VS代码。 我更改了某些版本的flutter sdk,问题与上述相同,如何解决此问题?

9 个答案:

答案 0 :(得分:3)

我遇到了类似的问题:

Running "flutter packages get" in austin-feeds-me-flutter...
The current Dart SDK version is 2.0.0-dev.58.0.flutter-f981f09760.

Because austin_feeds_me depends on palette_generator any which requires SDK version >=2.0.0-dev.61.0 <3.0.0, version solving failed.
pub get failed (1)
Process finished with exit code 1

我使用以下命令对其进行了修复:

flutter channel dev
flutter upgrade

修复来源:https://github.com/flutter/flutter/issues/19382

答案 1 :(得分:1)

我知道这是一个过时的问题,但是我认为会有人从中受益,而且答案也没有过时。

您需要修复environment:中的pubspec.yaml,以允许您使用的Dart SDK版本(Flutter中的版本)

environment:
  sdk: ">=2.0.0-dev.68.0 <3.0.0"

必不可少的部分是<3.0.0

最初在GitHub由GünterZöchbauer回答:-https://github.com/flutter/flutter/issues/21421#issuecomment-418718539

答案 2 :(得分:1)

我通过使用 any 而不是像这样的版本代码解决了我的错误

flutter_test: any

代替

flutter_test: ^1.1.0+1

答案 3 :(得分:0)

我自己找到了解决此问题的方法。我添加了系统环境变量PUB_ALLOW_PRERELEASE_SDK = false,因此只需删除该系统环境变量,即可解决问题。

答案 4 :(得分:0)

只需将pubspec.yaml中的软件包版本修改为解决我的问题的最新版本。

答案 5 :(得分:0)

只需通过以下代码更新您的SDK

flutter channel dev
flutter upgrade

如果您住在伊朗,则需要使用代理,因为Google不允许您使用其软件包 对于scoped_model,您需要在pubspec.yaml文件中使用以下版本的

dependencies:
  scoped_model: ^1.0.1

然后保存文件,您的IDE会自动更新软件包

答案 6 :(得分:0)

我遇到了同样的问题,flutter upgrade --force解决了这个问题。

注意:升级Flutter版本后,重新运行命令flutter pub get

答案 7 :(得分:0)

所以这里有一些解决这个问题的选择:

如果您已经尝试了上述解决方案但没有奏效,那么

  1. 您的 Flutter SDK 可能有问题,需要先解决这个问题。 You have changes in your flutter SDK

要解决此问题,请 cd 进入您的 flutter 目录。例如 D:\repo\flutter 使用 git status

找出您在此目录中所做的 git 更改

使用 git add * 添加这些更改(文件),然后执行 git stash

为确保您使用的是该频道的最新版本,请运行 flutter upgrade

您应该可以切换到任何颤振通道

注意安全。一切顺利

答案 8 :(得分:0)

也许你的 Flutter SDK 不是最新版本。通过下面的命令升级它(并且文档说,最好保持稳定的频道,只有在必要时才升级到 dev)

public override void Init()
{
    Debug.Log("Window 0: " + windows[0].GetType().ToString());
}