Flutter需要SDK版本

54

我遇到了这个错误:

Running "flutter packages upgrade" in bingo360...               
The current Dart SDK version is 2.1.2-dev.0.0.flutter-0a7dcf17eb.
Because bingo360 depends on flutter_launcher_icons >=0.7.1 which requires SDK version >=2.2.0 <3.0.0, version solving failed.
pub upgrade failed (1)

我的 pubspec.yaml 文件如下:

environment:
sdk: ">=2.1.0 <3.0.0"

dependencies:
  flutter:
    sdk: flutter

cupertino_icons: ^0.1.2
http: ^0.12.0+1
flutter_launcher_icons: "^0.7.2"

dev_dependencies:
  flutter_test:
  sdk: flutter

我尝试更改为sdk: ">2.2.0 <3.0.0"但不起作用。

有什么建议吗?

有任何建议吗?


4
请确保您的Flutter已更新至最新版本。运行“flutter doctor -v”命令,该命令会打印出与Flutter版本捆绑的Dart版本。请确保Dart版本至少为2.2。(当前与Flutter 1.5.4 beta捆绑的Dart版本为2.3.0) - Richard Heap
@RichardHeap 的 Dart 版本是 2.1.2,Flutter 版本是 1.2.1。如何更新它们? - Italo Rodrigo
1
https://flutter.dev/docs/development/tools/sdk/upgrading - Richard Heap
@RichardHeap 谢谢,这是我第一个使用Flutter的项目。 - Italo Rodrigo
flutter upgrade - Amit Khetan
13个回答

99

前往“工具”-> Flutter ->“Flutter升级”

看看是否有效。如果需要升级SDK,则无法手动更改。


2
我的Flutter版本是最新的,但仍然会出现这样的故障。 - Harsh Phoujdar
当您运行 Tools -> Flutter -> Flutter Doctor 或在终端中输入 flutter doctor -v 时,会打印出什么内容? - James 666

50

在你的终端上执行以下命令:

flutter upgrade --force

2
我已经尝试了这个,等待了大约30分钟,仍然出现相同的错误,升级无法解决问题。 因为timeago 3.0.2需要SDK版本>=2.12.0 <3.0.0,并且没有timeago版本符合>3.0.2 <4.0.0,所以timeago ^3.0.2被禁止。 - Harsh Phoujdar

4
在pubspec.yaml中,我通过以下方式解决了问题:
将环境变量更改为比SDK要求的低1个版本号 - 例如,SDK要求2.15.0,我将其调整为2.14.0,并运行put get和pub upgrade- 环境变量: sdk: ">=2.14.0-144.0.dev <3.0.0" 还要确保在File>Settings->Languages and FrameWorks->Dart中正确设置了Dart SDK - 通常在flutter\bin文件夹内。

3

使用此命令系统将自动查找匹配版本的项目。

flutter pub add flutter_launcher_icons

1
如果您使用的是 Visual Studio Code,那么只需创建一个新的 Flutter 应用程序。
flutter create foo

复制并粘贴新的pubspec.yaml文件中的sdk范围到您当前的项目中。

environment:
  sdk: ">=2.15.0-116.0.dev <3.0.0"

上述解决方案对我无效,但是这个有效。 但是,请确保您从 pub.dev 获取的所有软件包都是最新的,如果您不是严格根据旧软件包开发,则可能会导致错误并需要升级。

1
在错误中尝试更改SDK版本到所需的版本。例如,在您的情况下,要求在“pubspec.yaml”文件中版本应为>=2.1.0 <3.0.0。请注意保留HTML标签。

1

找到你的Flutter SDK的位置。在我的情况下,它是C:\src\flutter,然后运行以下命令:

C:\src\flutter\bin\flutter.bat --no-color upgrade

或者

前往工具 -> Flutter -> Flutter升级

点击查看屏幕截图


1

我遇到了同样的错误,然后运行 flutter channel betaflutter upgrade 就解决了问题。


1

尝试在Mac上执行此操作

sudo xcode-select --reset

0
我遇到了以下错误:
The current Dart SDK version is 2.19.0-146.2.beta.

Because app depends on http >=0.13.6 which requires SDK version >=2.19.0 <3.0.0 or >=3.0.0 <4.0.0, version solving failed.
Running "flutter pub get" in app...                                  
pub get failed
command: "/Users/user/development/flutter/bin/cache/dart-sdk/bin/dart __deprecated_pub --verbosity=warning get --no-precompile"
pub env: {
  "FLUTTER_ROOT": "/Users/user/development/flutter",
  "PUB_ENVIRONMENT": "flutter_cli:get",
  "PUB_CACHE": "/Users/user/.pub-cache",
}
exit code: 1
last line of pub output: "Because app depends on http >=0.13.6 which requires SDK version >=2.19.0 <3.0.0 or >=3.0.0 <4.0.0, version solving failed."

对我来说,将频道从开发者切换到稳定版,然后进行升级是有帮助的。最终,flutter pub get 成功运行了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接