如何自动升级 Flutter 依赖
How to automatically upgrade Flutter dependencies
我的 Flutter 项目在 ^2.0.1
版本有一个依赖项 flutter_dotenv
,我想自动升级到新版本 ^2.0.2
。
我是运行下面的命令来升级它:
flutter pub upgrade
To update to the latest compatible versions of all the dependencies
listed in the pubspec.yaml file, use the upgrade command:
flutter pub upgrade
然而似乎什么也没有发生。 pubspec.yaml
没有变化,控制台输出没有提到新版本(这就足够了)。
我的 pubspec.yaml
看起来像这样:
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
flutter_dotenv: ^2.0.1
cupertino_icons: ^0.1.2
dev_dependencies:
flutter_test:
sdk: flutter
flutter:
uses-material-design: true
运行 pub
永远不会改变 pubspec.yaml
。但是,它可能会解析为与指定的 'base' 版本不同的版本 - 前导 caret 允许发布者解析为:
the range of all versions guaranteed to be backwards compatible with the specified version
签入 pubspec.lock
文件,您可能会看到 pub 已经解决了 version: "2.0.2"
Flutter 在 的基础上自动升级非破坏性变更。您不希望自动进行重大更改。更新反映在 pubspec.lock
,而不是 pubspec.yaml
。
有几个 IDE 插件可以帮助您更轻松地升级软件包,而不是在 pub.dev.
上一个一个地查找它们
Android工作室
此插件会突出显示 pubspec.yaml
您拥有的任何已过时的依赖项,以便您可以根据需要选择更新它们。
Visual Studio代码
这个插件使得添加或更新依赖项变得非常简单,而无需 pub.dev,但您仍然需要一次检查一个。
声明依赖版本有两种方式:
- Caret syntax - 它保证向后兼容性。示例:
^1.3.0
- Traditional syntax - 极大的灵活性,多种选择供您控制。示例:
>=1.2.3
此行为类似于 package.json
,具有 Node.js 依赖管理。
您在 pubspec.yaml
中选择的声明依赖关系的方式将定义 实际依赖关系 将如何在 pubspec.lock
文件中定义。
以上方法有效,但您可以使用此命令:
flutter pub upgrade --major-versions
它将更新您所有的依赖项。
同时检查“如何正确添加依赖项以避免”“版本解析失败”错误
参考这个:
我希望它清除一切,编码愉快!
我的 Flutter 项目在 ^2.0.1
版本有一个依赖项 flutter_dotenv
,我想自动升级到新版本 ^2.0.2
。
我是运行下面的命令来升级它:
flutter pub upgrade
To update to the latest compatible versions of all the dependencies listed in the pubspec.yaml file, use the upgrade command:
flutter pub upgrade
然而似乎什么也没有发生。 pubspec.yaml
没有变化,控制台输出没有提到新版本(这就足够了)。
我的 pubspec.yaml
看起来像这样:
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
flutter_dotenv: ^2.0.1
cupertino_icons: ^0.1.2
dev_dependencies:
flutter_test:
sdk: flutter
flutter:
uses-material-design: true
运行 pub
永远不会改变 pubspec.yaml
。但是,它可能会解析为与指定的 'base' 版本不同的版本 - 前导 caret 允许发布者解析为:
the range of all versions guaranteed to be backwards compatible with the specified version
签入 pubspec.lock
文件,您可能会看到 pub 已经解决了 version: "2.0.2"
Flutter 在pubspec.lock
,而不是 pubspec.yaml
。
有几个 IDE 插件可以帮助您更轻松地升级软件包,而不是在 pub.dev.
上一个一个地查找它们Android工作室
此插件会突出显示 pubspec.yaml
您拥有的任何已过时的依赖项,以便您可以根据需要选择更新它们。
Visual Studio代码
这个插件使得添加或更新依赖项变得非常简单,而无需 pub.dev,但您仍然需要一次检查一个。
声明依赖版本有两种方式:
- Caret syntax - 它保证向后兼容性。示例:
^1.3.0
- Traditional syntax - 极大的灵活性,多种选择供您控制。示例:
>=1.2.3
此行为类似于 package.json
,具有 Node.js 依赖管理。
您在 pubspec.yaml
中选择的声明依赖关系的方式将定义 实际依赖关系 将如何在 pubspec.lock
文件中定义。
以上方法有效,但您可以使用此命令:
flutter pub upgrade --major-versions
它将更新您所有的依赖项。
同时检查“如何正确添加依赖项以避免”“版本解析失败”错误
参考这个:
我希望它清除一切,编码愉快!