我正在尝试将此http package安装到我的Flutter应用程序。
但是当我执行flutter pub get
时,我得到这个错误:
The current Dart SDK version is 2.13.4.
Because http 0.13.4 requires SDK version >=2.14.0 <3.0.0 and no versions of http match >0.13.4 <0.14.0, http ^0.13.4 is forbidden.
So, because app depends on http ^0.13.4, version solving failed.
pub get failed (1; So, because spotlight depends on http ^0.13.4, version solving failed.)
然而,我在此之前执行了flutter upgrade
,它说我在最新的版本,其中包括飞镖。
Flutter is already up to date on channel master
Flutter 2.9.0-1.0.pre.198 • channel master • https://github.com/flutter/flutter.git
Framework • revision 3f775d864e (11 hours ago) • 2021-12-26 08:59:07 -0500
Engine • revision d56b72b117
Tools • Dart 2.16.0 (build 2.16.0-135.0.dev) • DevTools 2.9.2
这是为什么呢?
编辑:pubspec.yaml
下方:
name: app
description: A new Flutter project.
# The following line prevents the package from being accidentally published to
# pub.dev using `pub publish`. This is preferred for private packages.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
environment:
sdk: ">=2.12.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^1.0.2
http: ^0.13.4
dev_dependencies:
flutter_test:
sdk: flutter
在我的设置中,它显示为2.13.4
:
编辑:所以问题是当我输入which flutter
时Flutter路径不正确。它与我在Android Studio中的路径不同。我如何更改这一点?
5条答案
按热度按时间ffx8fchx1#
在项目的
pubspec.yaml
文件中查找sdk设置。这将确定项目的最低Dart SDK版本。将下限更改为2.14.0。uxhixvfz2#
如果使用FVM,请确保将Flutter SDK路径指向项目中的符号链接文件夹,然后该文件夹将引用最新的活动Flutter sdk版本
类似于:C:\开发\Flutter\测试Flutter**.fvm\Flutter_sdk**
这对它的工作至关重要!
nkoocmlb3#
我能想到的第一件事是以下。
在设置-〉语言和框架-〉Flutter / Dart中检查Flutter和Dart设置
确保使用正确的flutter版本,并且dart sdk来自flutter/bin/cache/dart-sdk
例如,我的flutter位于C:\flutter中,dart-sdk的路径为C:\flutter\bin\cache\dart-sdk
ki1q1bka4#
已解决:问题是Android Studio终端中使用的flutter路径与
Preferences > Languages & Frameworks > Flutter
中的flutter路径不同。我通过键入which flutter
命令发现了这一点,该命令指向不同的flutter路径。j1dl9f465#
检查vscode中dart SDK的当前路径