gpt4 book ai didi

flutter - 为什么在 Pubspec.lock flutter sdk 版本为 : "0.0.0"? 如何安全地锁定 flutter 版本?

转载 作者:行者123 更新时间:2023-12-03 17:25:58 27 4
gpt4 key购买 nike

我正在帮助调试一个测试游戏应用程序。我对包裹进行了深入研究。我仍然感到困惑并且找不到关于堆栈溢出和官方文档的正确文档的一件事是显示 的代码行。 flutter 版本:“0.0.0”虽然显然不是。

pubspec.lock 所有的包都是最新的,就像这样:

   dependency: "direct main"
description:
name: audioplayers
url: "https://pub.dartlang.org"
source: hosted
version: "0.14.2"

但不是为了 flutter
    dependency: "direct main"
description: flutter
source: sdk
version: "0.0.0"
...
flutter_test:
dependency: "direct dev"
description: flutter
source: sdk
version: "0.0.0"
flutter_web_plugins:
dependency: transitive
description: flutter
source: sdk
version: "0.0.0"

然后在最底部有
sdks:
dart: ">=2.6.0 <3.0.0"
flutter: ">=1.12.13+hotfix.4 <2.0.0"

也在 pubspec.yaml

Dart 以这种方式受到约束
  sdk: ">=2.3.0 <3.0.0"

而 flutter 不是
dependencies:
flutter:
sdk: flutter

困惑

我们将我们的代码与 github 上的不同源代码进行了比较,发现了类似的行为。
例如:
https://github.com/japalekhin/langaw/blob/master/pubspec.lock

https://github.com/fireship-io/183-flutter-draggable-game/blob/master/pubspec.lock
  • 要修复一个版本的 flutter - 我们可以编辑底部的 pubspec.lock 行吗?这会造成不稳定吗?
  • 任何文档,关于引擎盖下发生的事情的解释?以及为什么有一个 版本:“0.0.0”在代码中?
  • 最佳答案

    您可以在环境部分指定 Flutter SDK 本身的约束,如 Pubspec Doc 中所述。 .
    在撰写此答案时,我使用的是 Flutter 2.0.3 版。
    使用 flutter create myapp 创建模板项目后, pubspec.yaml 和 pubspec.lock 文件没有 Flutter SDK 约束。
    我添加了 Flutter SDK 约束,如下所示 -

    environment:
    sdk: ">=2.7.0 <3.0.0"
    flutter: '2.0.3'
    正在执行 flutter pub get命令,更新 pubspec.lock 文件如下 -
    sdks:
    dart: ">=2.12.0-0.0 <3.0.0"
    flutter: ">=2.0.3"
    即使在以精确的语法指定 Flutter SDK 约束之后,更新后的 pubspec.lock 文件也具有下限约束而不是范围约束。真奇怪。
    此外,指定如下插入符语法会生成与上述相同的约束 -
    environment:
    sdk: ">=2.7.0 <3.0.0"
    flutter: '^2.0.3'
    我从 this 获得了线索问题。

    关于flutter - 为什么在 Pubspec.lock flutter sdk 版本为 : "0.0.0"? 如何安全地锁定 flutter 版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60897315/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com