Open1
FlutterCrashlyticsでCan't load Kernel binary: Invalid kernel binary format versionとなって辛かった
$ flutterfire configure
を使ってFlutterでFirebaseを構成をした際に残っていたキャッシュでエラーがでてiOSビルドができなくなった。それぞれ試した内容をメモします。
結論
$ dart pub cache clear
を使ってflutterfireを完全にクリアすると解消した
発生したエラー
Firebase Crashlyticsをセットアップする際に以下の様なエラーが発生した
Can't load Kernel binary: Invalid kernel binary format version
ERR flutterfire_cli as globally activated doesn't support Dart 3.2.0-42.2.beta.
try $dart pub global activate flutterfire_cli
Can't load Kernel binary: Invalid kernel binary format version
は実行中のDart versionと異なるversionで実行されたキャッシュが残っていると発生することがあるらしい
ERR flutterfire_cli as globally activated doesn't support Dart 3.2.0-42.2.beta.
try $dart pub global activate flutterfire_cli
実行しているdartのバージョンではflutterfire側がサポートしていない、とのことだったのでバージョンを確認
$ fvm flutter --version
Flutter 3.22.2 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 761747bfc5 (5 weeks ago) • 2024-06-05 22:15:13 +0200
Engine • revision edd8546116
Tools • Dart 3.4.3 • DevTools 2.34.3
$ flutterfire --version
1.0.0
エラーに表示されているエラーとバージョンが異なるようでしたが、flutterfireを最新化してみた。がエラーは変わらず。
$ dart pub global deactivate flutterfire_cli
$ dart pub global activate flutterfire_cli
を試してみましたがこちらもエラーに変化なし。
$ dart pub cache repair
を実行してcacheに含まれるflutterfireを最新化しても解消せず。
最終的にflutterfireがインストールされている /.pub-cache/
のキャッシュファイルを削除するために以下を実行
$ dart pub cache clear
※注意: /.pub-cache/ に含まれる全てのpackageがcleanされてしまうので該当ディレクトリのファイルを確認してください
$ flutter pub get
して最新化したところ解消