我试图迁移dart安全,但是在运行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时,我收到了这条消息,一切似乎都准备好了,以实现空安全:
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.如何升级这些包并迁移到空安全?感谢每一个答案:)
发布于 2022-04-04 20:42:03
您可以在此命令行中使用迁移助手工具:
dart migrate或者您也可以在pubspec.yaml中更改min颤振sdk版本后手动迁移。
environment:
sdk: '>=2.12.0 <3.0.0'在进行此更改之后,需要启动以下命令:
flutter pub get发布于 2022-05-05 05:38:19
该工具将下列文件列为非空安全文件:
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它们属于颤栗本身:https://github.com/flutter/flutter/tree/master/packages/flutter_tools/test
所以你应该更新颤振本身。您可以在pubspec.yaml中这样做。
environment:
sdk: ">=2.15.0 <3.0.0"
flutter: ">=2.10.0" # <= here我不确定是哪个版本迁移了这些文件,所以尝试一下最近一个不会过多破坏您的代码的版本。
发布于 2022-01-28 18:34:18
这是因为您需要更新您的包,有些包不支持空安全,因此您需要检查每个包,例如。您可以查看一些包,并在顶部显示软件包是否支持空安全(例如图像),(有时用户在其他存储库中更新,然后从GitHub *检查page页面,如果包没有支持)

https://stackoverflow.com/questions/69470438
复制相似问题