「null 安全性の有効化」に従いdart.dev
、Flutterアプリケーション全体を null 安全性に移行しました。
現在、 を使用して実行しようとしていますflutter run
。ただし、次のエラーのため起動しません。
Error: Cannot run with sound null safety, because the following dependencies
don't support null safety:
- package:cloud_firestore_web
- package:firebase_core_web
- package:shared_preferences
- package:url_launcher_web
- package:firebase_auth
- package:http
- package:provider
...
For solutions, see https://dart.dev/go/unsound-null-safety
Failed to compile application.
URL のガイドには、「パッケージを移行する前に依存関係が移行するのを待つ」必要があると書かれていますが、今はデフォルトで非 null 可能(NNBD)を使用したいと思います。
どうやってやるの?
ベストアンサー1
まず、ガイドを読んで、不健全な null 安全性について理解する必要があります。アプリケーションを不健全な null 安全性で実行することに確信がある場合は、次のコマンドを使用できます。
flutter run --no-sound-null-safety
この--no-sound-null-safety
オプションについては記事に記載されていませんが、過去数か月間、これに関して問題は発生していません (特に、Flutter フレームワーク全体が null セーフティに移行されてからは発生していません)。
ドキュメントはこれを含むように更新されました。「混合バージョンのプログラムのテストまたは実行」を参照してください。
IDE 実行引数/構成
選択した IDE でこれを設定するには、以下を使用できます。
- IntelliJ / Android Studioの場合: 「構成の編集」(実行構成内) → 「追加の実行引数」。
- Visual Studio Codeの場合: ユーザー設定で「Flutter run additional args」を検索します。
どちらの場合も、 を追加します--no-sound-null-safety
。
テスト構成
テストの場合も、同じことを行う必要があります。
- IntelliJ / Android Studioの場合: 「構成の編集」(実行構成内) → 「追加の引数」。
- Visual Studio Codeの場合: ユーザー設定で「Flutter テストの追加引数」を検索します。
どちらの場合も、 を追加します--no-sound-null-safety
。