如何运行具有不同/较旧的 Dart SDK 依赖项的颤振项目?

Posted

技术标签:

【中文标题】如何运行具有不同/较旧的 Dart SDK 依赖项的颤振项目?【英文标题】:How to run flutter projects with different/older Dart SDK dependencies? 【发布时间】:2019-05-10 00:05:59 【问题描述】:
The current Dart SDK version is 2.1.0-dev.9.4.flutter-f9ebf21297.

Because NewsBuzz requires SDK version >=1.8.0 <2.0.0, version solving failed.

我正在尝试从https://startflutter.com 运行项目。有几个较旧的项目使用较旧版本的 Dart SDK 或依赖项需要较旧的 Dart SDK 版本。

有没有什么方法可以运行多个版本的 Dart 而无需下载旧版本的 Dart 并手动更改环境变量?

我浏览了几篇 *** 帖子和许多 Github 问题,但没有找到合适的解决方案。

    Flutter lower dart version Where is Dart's SDK located within /flutter folder?

pubspec.yaml 中指定 SDK 版本似乎没有帮助。

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

编辑:Dart & Flutter support for Visual Studio Code 文档说明了有关 dart.sdkPathsdart.flutterSdkPaths 设置的内容。

【问题讨论】:

克隆并更新 NewsBuzz 以使用当前的 Dart/Flutter 版本。理想情况下,之后向原始包发出拉取请求。 我不想更新我遇到的每一个 Flutter 应用。我希望在无需升级/降级我的颤振安装的情况下独立运行它。就像我们对 angular/ionic 应用程序或 NPM (npmjs.com) 所做的那样。 【参考方案1】:

首先以管理员身份打开你的命令(cmd)然后升级flutter:flutter升级它会为你做所有事情

【讨论】:

【参考方案2】:

只需将您的 Flutter sdk 更新到最新版本。

【讨论】:

【参考方案3】:

我也遇到过类似的问题:

我的 pubspec.yaml 有以下内容:

environment:
  sdk: ">=2.1.0 <3.0.0"

但是在运行flutter packages get 时出现以下错误:

Running "flutter packages get" in xxx-app-mobile...
The current Dart SDK version is 2.1.0-dev.9.4.flutter-f9ebf21297.

Because xxx_app requires SDK version >=2.1.0 <3.0.0, version solving failed.
pub get failed (1)

我尝试使用确切的版本名称作为环境变量,但它不起作用。我试过了:

flutter upgrade
flutter clean
flutter update-packages

运行flutter packages get时收到同样的错误 然后我将 pubspec.yaml 中的版本要求降级为:

environment:
  sdk: ">=2.0.0 <3.0.0"

flutter packages get 工作...

【讨论】:

以上是关于如何运行具有不同/较旧的 Dart SDK 依赖项的颤振项目?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 2010 \ 2011 sdk 编译较旧的 3dsmax 版本?

较旧的模拟器下载是不是会下载相应的sdk更改

SDK 管理器不显示较旧的 API

意外从具有不同提交历史的远程仓库中提取后访问较旧的 Git 提交

如何在较旧的 GPU 上测试 OpenGL 应用程序?

如何从 Maven 存储库中清除旧的依赖项?