[Flutter]Android Studioを「Flamingo」にアップグレードしたら、Androidアプリとしてビルドできなくなった場合の対処法

2023年4月に、Flutterアプリを作るための道具である「Android Studio」の安定版が「Flamingo(2022.2.1)」にアップグレードされましたが、

blank

アップグレード後、FlutterのプロジェクトをAndroidアプリとしてビルドするとエラーになってしまう事象が発生しており、Flutterの公式サイトでも説明されています。

エラーの内容は、上記公式サイトで示されているような、以下のような場合もあれば、

Caused by: org.codehaus.groovy.control.MultipleCompilationErrorException: startup failed:

blank

FAILURE: Build failed with an exception.

* Where:
Build file '…/example/android/build.gradle'
* What went wrong:
Could not compile build file '…/example/android/build.gradle'.
> startup failed:
  General error during conversion: Unsupported class file major version 61

  java.lang.IllegalArgumentException: Unsupported class file major version 61
  	at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:189)
  	at groovyjarjarasm.asm.ClassReader.<init>(ClassReader.java:170)
  	[…
  	 …
  	 … 209 more lines of Groovy and Gradle stack trace …
  	 …
  	 …]
  	at java.base/java.lang.Thread.run(Thread.java:833)

 

以下のような場合もありますが、

blank

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':audio_session:compileDebugJavaWithJavac'.
> java.lang.IllegalAccessError: class org.gradle.internal.compiler.java.ClassNameCollector (in unnamed module @0x2e094a4a) cannot access class com.sun.tools.javac.code.Symbol$TypeSymbol (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.code to unnamed module @0x2e094a4a

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

 

原因

Android Studioを「Flamingo」にアップグレードした際に、内包されているJavaのSDKのバージョンが11から17にアップグレードされたのですが、Gradle(Androidアプリをビルドするためのツール)のバージョンが7.3未満の場合は、Java17が使えないので、そのような場合に発生するエラーなのだそうです。

This error occurs because Android Studio Flamingo updates its bundled Java SDK from 11 to 17. Flutter uses the version of Java bundled with Android Studio to build Android apps. Gradle versions prior to 7.3 can’t run when using Java 17.

https://docs.flutter.dev/release/breaking-changes/android-java-gradle-migration-guide#summary

 

対処法

ですので、対処法としては、Java17が使えるように、Gradleのバージョン7.3以上7.6.2以下をアップグレードすればいいとのことなので、

You can fix this error by upgrading your Gradle project to a compatible version (7.3 through 7.6.2, inclusive)

 

1)以下の要領で、AndroidアプリとしてFlutterのプロジェクトを開くと、

blank

 

2)(これは発生しない場合あり)エラーになるので、以下の要領で「Build」ウィンドウの「Unsupported Java」にあるリンクをクリックすると、

blank

 

3)プロジェクトをアップグレードするよう促すダイアログ(Project update recommended)が表示されるので「Start AGP Upgrade Assistant」をクリックして、

blank

 

4)表示された「Upgrade Assistant」ダイアログから、以下の要領でアップグレードを実行

blank

 

5)成功後、再度ビルドしてみて、エラーがでなければOK(アプリがちゃんと動けばOK)。

blank

 

(詳しくは、以下の動画で解説していますので、よろしければご覧ください)

blank

こんな記事も読まれています

今すぐプレゼントを受け取る(約6時間のFlutter初級編体験版動画講座を無料でプレゼント)
blank

はじめての方へ

blank
みんプロ式プログラミング講座体系・ラインナップ
みんプロ式プログラミング講座受講の流れ(割引特典利用方法)
サイトマップ(みんプロHPコンテンツ一覧)
運営会社概要

おすすめコンテンツ

プログラミングを学ぶとどんないいことがあるのか
みんプロ式を選んでいただける6つの理由
ぼくの人生挫折ヒストリー(代表者プロフィール)
ぼくのプログラミング挫折ヒストリー(無料メール講座・6大特典付き)
今最も注目のアプリ開発ツール「Flutter(フラッター)」ミニ動画講座

みんプロ式動画講座(コア・Flutter)

ゼロからのFlutter(初級編)-はじめてのプログラミングからアプリリリースまで-
Flutter中級編1-Web通信・設計・状態管理・DIの基礎-
Flutter中級編2-Firebase/地図・カメラ連携等の基礎-
Flutter中級編3-広告/アプリ内課金等の基礎-
Flutter中級編4-Webアプリとレスポンシブデザインの基礎-

みんプロ式動画講座(サテライト)

Flutter/Dartトラブルシューティング・小ネタ集(コア初級編受講で無料プレゼント)
ゼロからのGit・GitHub(コマンドラインツールを極力使わないバージョン管理入門)
Flutter/Dartにおける設計・状態管理・DIの解説集
Dart逆引き大辞典
Flutterにおけるテストの基礎
blank
blank

みんプロ作成アプリ

blank
blank
blank
blank

TOP