【问题标题】:Null safety migration error: package has unmigrated dependencies. But all my dependencies declare support for null-safety空安全迁移错误:包具有未迁移的依赖项。但是我所有的依赖项都声明支持空安全
【发布时间】:2021-10-06 17:48:02
【问题描述】:

我正在尝试迁移 dart null 安全性,但在运行 dart migrate 时出现以下错误

Bad state: Error: package has unmigrated dependencies.

Before migrating your package, we recommend ensuring that every library it
imports (either directly or indirectly) has been migrated to null safety, so
that you will be able to run your unit tests in sound null checking mode.  You
are currently importing the following non-null-safe libraries:

  file:///C:/flutter/packages/flutter_tools/test/integration.shard/test_data/basic_project.dart
  file:///C:/flutter/packages/flutter_tools/test/integration.shard/test_data/deferred_components_config.dart
  file:///C:/flutter/packages/flutter_tools/test/integration.shard/test_data/project.dart
  file:///C:/flutter/packages/flutter_tools/test/integration.shard/test_driver.dart
  file:///C:/flutter/packages/flutter_tools/test/src/test_flutter_command_runner.dart
  file:///C:/flutter/packages/flutter_tools/test/src/testbed.dart
 package:dwds/data/build_result.dart
  package:dwds/data/connect_request.dart
  package:dwds/data/debug_event.dart
  package:dwds/data/devtools_request.dart
  package:dwds/data/error_response.dart
  package:dwds/data/extension_request.dart
  package:dwds/data/isolate_events.dart
  package:dwds/data/register_event.dart
  package:dwds/src/debugging/dart_scope.dart
  package:dwds/src/debugging/debugger.dart
  package:dwds/src/debugging/execution_context.dart
  package:dwds/src/debugging/frame_computer.dart
  package:dwds/src/debugging/inspector.dart
  package:dwds/src/debugging/instance.dart
  package:dwds/src/debugging/libraries.dart
  package:dwds/src/debugging/location.dart
  package:dwds/src/debugging/metadata/class.dart
  package:dwds/src/debugging/metadata/function.dart
  package:dwds/src/debugging/metadata/module_metadata.dart
  package:dwds/src/debugging/metadata/provider.dart



Please upgrade the packages containing these libraries to null safe versions
before continuing.  To see what null safe package versions are available, run
the following command: `dart pub outdated --mode=null-safety`.

当我运行 dart pub outdated --mode=null-safety 时,我收到了这条消息,并且一切似乎都已为 null 安全做好了准备:

C:\flutter\packages\flutter_tools>flutter pub outdated --mode=null-safety
Showing dependencies that are currently not opted in to null-safety.
[✗] indicates versions without null safety support.
[✓] indicates versions opting in to null safety.

All your dependencies declare support for null-safety.

如何升级这些包并迁移到零安全?感谢每一个答案:)

【问题讨论】:

    标签: flutter dart package dependencies dart-null-safety


    【解决方案1】:

    那是因为你需要更新你的包,有些包不支持空安全,那么你需要检查你的每一个包, 例如..你可以查看一些包,并在顶部说包是否支持空安全(例如图像),(有时用户在其他存储库中更新,然后检查来自 GitHub 的问题页面 *如果包不支持)

    【讨论】:

      【解决方案2】:

      您可以通过此命令行使用迁移帮助工具:

      dart migrate
      

      或者您可以在 pubspec.yaml 中更改 min flutter sdk 版本后手动迁移

      environment:
        sdk: '>=2.12.0 <3.0.0'
      

      在此更改之后,您需要启动此命令:

      flutter pub get
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-04-17
        • 2016-06-30
        • 2021-06-04
        • 2012-08-17
        • 2022-01-23
        • 2020-08-14
        相关资源
        最近更新 更多