📚
【Flutter】JDKとGradleのバージョンが合っていない問題
intel MacからM2 Macに買い換えた時にFlutterのandroidがビルドできなくなった。
エラー内容
Could not open settings generic class cache for settings file '/Users/sakatanoriaki/locotele/cable-platform/cable_platform_front/cableplatform/android/settings.gradle' (/Users/sakatanoriaki/.gradle/caches/6.7/scripts/f0emg6u6oecmxqzgk5g9nn4ui).
> BUG! exception in phase 'semantic analysis' in source unit '_BuildScript_' Unsupported class file major version 61
major version 61
はjavaバージョン17を意味しています。
このエラーはgradleのバージョン6.7とjava17は対応していないことを警告しています。
しかし、java17なんてインストールした覚えはないが、なぜかjava17が使用されている?
原因
結論、m2に変えた時にandroid studioのflamingoというバージョンを新規でインストールしていて、デフォルトjavaバージョンが17だったのが原因。
おとなしくAndroid Studioの古いバージョンを使う
私がintel macで使用していたandroid studioは、4.2.2というバージョンだった(Flutterを始めた日を遡った...)
android studioのホームページからそのままダウンロードすると、一番最新の安定版をインストールすることになる。
こちらから過去バージョンのアーカイブをインストールし、再度ビルドすると解消した。
最後に
本当は、過去バージョンのandroid studioにダウングレードするより、java17に対応したgradleバージョンにアップデートする方がいいとは思うが、チームで開発していたり、色々パッケージの不具合が起きたので今回は一旦断念。
Discussion