android tutorial「Android アプリでの Hilt の使用」のビルドができない
問題
androidの開発者向けチュートリアルのプロジェクトがビルドできなくて困った。
以下のエラーが出る
java.lang.IllegalArgumentException: Unsupported class file major version 65
結論
以下を実施することでビルドできるようになる
- kotlinのバージョンを1.9.22にする
- Project Structureで環境変数で指定しているkotlinのバージョンを1.9.22にする
- gradleのバージョンを上げる。今回は8.7.3で動作確認できた
- JDKのバージョンを21にする
作業記録
githubのissueで類似の問題がOpen状態になっている。
kotlinのversionを1.9.22にすると直るという情報があったので、kotlinコンパイラのバージョンアップを試した。
1.kotlinのバージョン更新
Android Studio -> Settings -> Other Settings -> Kotlin Compiler -> Kotlin Compiler Version で 1.9.22を設定する
チュートリアルのプロジェクトではkotlinのバージョンは環境変数で指定しているようなので、環境変数のkotlinコンパイラーのバージョンを1.9.22に変更する。
2.環境変数の更新
File -> Project Structure の Variable の android-hilt(build-script) の $kotlin_versionを設定する。
Gradleのバージョンアップが必要というエラーが出る。
3.Gradleのバージョンアップ
Tools -> AGP Upgrade Assistant を開き、8.7.3にして、「Run selected steps」を実行。
4.JDKのバージョン更新
今度はJDKのバージョンでエラーが出る。
appのbuild.gradleのcompileOptionsでJavaVersion.VERSION_21を指定して、「Sync Now」を実行
ビルドできて実行できた!
愚痴
Androidアプリのビルドって結構詰まることが多い。
せめてチュートリアルくらいはすぐにビルドできるようにしておいてほしい 🤮
Discussion