📚

【Flutter】JDKとGradleのバージョンが合っていない問題

2023/12/09に公開

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