Flutter Null 安全迁移说“包不存在”

Flutter Null Safety Migration says `Package doesn't exist`

Flutter 空安全迁移

我正在尝试将我的项目迁移到 Flutter Null Safety Version,并且我正在关注 this 官方迁移指南。

当我 运行 第二个命令时它说
Package doesn't exist (the Flutter SDK is not available).

命令一 运行

me@My-MacBook-Air my_project % dart --version
Dart SDK version: 2.12.0 (stable) (Thu Feb 25 19:50:53 2021 +0100) on "macos_x64"
me@My-MacBook-Air my_project % dart pub outdated --mode=null-safety
Package doesn't exist (the Flutter SDK is not available).

Flutter Doctor 输出

me@My-MacBook-Air my_project % `flutter doctor -v`
Flutter (Channel beta, 2.0.2, on macOS 11.2.3 20D91 darwin-x64, locale en-IN)
    • Flutter version 2.0.2 at /Users/me/flutter
    • Framework revision 8962f6dc68 (9 days ago), 2021-03-11 13:22:20 -0800
    • Engine revision 5d8bf811b3
    • Dart version 2.12.1

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/me/Library/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/me/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.4, Build version 12D4e
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6915495)

[✓] VS Code (version 1.51.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.17.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • macOS 11.2.3 20D91 darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 89.0.4389.90

• No issues found!

在这里看不到任何明显的东西,该命令只是一个查找,您仍然可以检查 pub.dev 手册中的所有依赖项,当所有软件包都支持 null 安全并且其他命令正常工作时,您应该没问题。

我只有一个想法,在大多数情况下测试版应该没问题,但如果没有任何效果,请切换到稳定版

flutter channel stable

确保你 运行 flutter upgrade

尝试flutter pub outdated --mode=null-safety,应该会显示包依赖项的迁移状态。

第一个运行:

dart pub outdated --mode=null-safety

并将您的软件包升级到 null-safe 变体,运行:

dart pub upgrade --null-safety