【Flutter】build_runner 実行時にFormatException

はじめに

flutter 3.29.2 で build_runner を実行したら、FormatException が発生した。解決に時間が掛かったので、メモを残しておきます。

エラーメッセージ

> fvm  dart run build_runner build --delete-conflicting-outputs       
Building package executable... 
Built build_runner:build_runner.
[INFO] Generating build script completed, took 181ms
[INFO] Reading cached asset graph completed, took 64ms
[INFO] Checking for updates since last build completed, took 471ms
[INFO] Running build completed, took 6ms
[INFO] Caching finalized dependency graph completed, took 36ms

[SEVERE] project_name on lib/main.dart (cached):
FormatException: Unexpected end of input (at character 1)

^

解決策

  • 関連するパッケージを更新する
flutter pub upgrade

これで直るときもあるらしい

  • キャッシュ等を消す
dart pub run build_runner clean
rm -rf .dart_tool
dart run build_runner build --delete-conflicting-outputs

build_runnerとDartのキャッシュを消す。実際はコマンドでなく、Windowsなんでエクスプローラーから削除しましたが、、

以下のフォルダも削除してみたけど、効果があったかは不明(Windows11でのパス)

C:\flutter\bin\cache
C:\Users\user_name\AppData\Local\Pub\Cache\git

参考