版本提示
Dart 2.19 是最后一个支持空安全迁移并且包含
dart migrate
工具的版本。请使用最新的 Dart 2.19 SDK 进行迁移。你可以阅读 Dart 3 与空安全 了解更多。
本文将介绍如何将你的代码迁移至 空安全。以下是对你的 package 逐个迁移的基本步骤:
- 等待 你依赖的 package 迁移完成。
- 迁移 你的 package 的代码,最好使用交互式的迁移工具。
- 静态分析 package 的代码。
- 测试 你的代码,确保可用。
- 如果你已经在 pub.dev 上发布了你的 package,可以将迁移完成的空安全版本以 预发布 版本进行 发布。
我们强烈建议你按顺序迁移代码,先迁移依赖关系中的处于最末端的依赖。例如,如果 C 依赖了 B,B 依赖了 A,那么应该按照 A -> B -> C 的顺序进行迁移。
切换至 Dart 2.19.6 版本
切换到 Dart SDK 的 2.19.6 稳定版,它包含在 Flutter 3.7.12 SDK 中。
执行下面代码查看是否使用了 Dart 2.19.6 版本:
$ dart --version
Dart SDK version: 2.19.6
检查所有依赖的迁移状态
通过以下命令检查你的 package 的迁移状态:
$ dart pub outdated --mode=null-safety
content_copy
如果你看到所有依赖都已支持空安全,就意味着你可以开始迁移了。否则请使用 Resolvable 列内列举的已迁移至空安全的版本。
升级依赖
在迁移你的 package 的代码之前,请将它的依赖项升级至空安全版本。
- 运行命令
dart pub upgrade --null-safety
将依赖升级至支持空安全的最新版本。 注意: 该命令会更改你的pubspec.yaml
文件。 - 运行命令
dart pub get
。
迁移——使用迁移工具
迁移工具会带上一个非空安全的 package ,将它转换至空安全。你可以先在代码中添加 提示标记 来引导迁移工具的转换。
开始转换前,请做好如下的准备:
- 使用 Dart SDK 的 2.19.6 版本。
- 运行
dart pub outdated --mode=null-safety
以确保所有依赖为最新且空安全。
在包含 pubspec.yaml
的目录下,执行 dart migrate
命令,启动迁移工具。
阅读全文
公众号近期文章
赞赏支持
0 Responses to “Flutter 项目迁移升级至空安全版本”