開発中に、こんなエラーでました。
The project is using an incompatible version (AGP 8.0.0-alpha05) of the Android Gradle plugin. Latest supported version is AGP 7.3.1
https://developer.android.com/studio/releases#android_gradle_plugin_and_android_studio_compatibility
良く分かっていないですが2つの「バージョン」の相性が悪いようです。
開発環境はそれぞれのバージョンを持つ複数の何かで構成されています。
これまでも整理してきましたが、
👉 【Android Studio】ビルド環境を安定した最新バージョンにする
👉 Android Studio の設定で「バージョン」の記述してるとこありすぎね?
これらを踏まえて、今現在のバージョンで再度整理してみます。
まずは、私の環境でそれぞれのバージョンを確認していきます。
■ Android Studio
Android Studio で、左上のメニューから、
Android Studio
↓
About Android Studio
Android Studio Dolphin | 2021.3.1 Patch 1
Build #AI-213.7172.25.2113.9123335, built on September 30, 2022
Runtime version: 11.0.13+0-b1751.21-8125866 x86_64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Android Studio のバージョンは、
Android Studio Dolphin | 2021.3.1 Patch 1
です。
■ Android Gradle Plugin
同様にメニューから、
File
↓
Project Structure
↓
Project
選択肢しか表示されてない!
👉 Cannot find AGP version in build files & empty Android Gradle Plugin Version - Stack Overflow
Plugin DSL
の影響でしょうか。
module = "com.android.tools.build:gradle"
を参照する id = "com.android.application"
のバージョンを確認します。
👉 【Plugin DSL】「com.android.tools.build:gradle」の記述は不要?
# gradle/libs.versions.toml
[versions]
agp = "7.3.1"
[plugins]
android-application = { id = "com.android.application", version.ref = "agp" }
# android-application = { id = "com.android.library", version.ref = "agp" }
Android Gradle plugin のバージョンは、
7.3.1
です。
最初のエラーのメッセージに従って 8.0.0-alpha05 → 7.3.1
と下げました。
👉 【Plugin DSL】Android Gradle Plugin のバージョンがわからない
■ Gradle
メニューから、
File
↓
Project Structure
↓
Project
または、ターミナルでコマンド打ちます。
❯ ./gradlew --version
------------------------------------------------------------
Gradle 7.5.1
------------------------------------------------------------
Build time: 2022-08-05 21:17:56 UTC
Revision: d1daa0cbf1a0103000b71484e1dbfe096e095918
Kotlin: 1.6.21
Groovy: 3.0.10
Ant: Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM: 11.0.16.1 (Homebrew 11.0.16.1+0)
OS: Mac OS X 13.0 x86_64
または、gradle-wrapper.properties
を見ます。
# gradle/wrapper/gradle-wrapper.properties
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
Gradle のバージョンは、
7.5.1
です。
■ 各バージョン同士の関係
The Android Studio build system is based on Gradle, and the Android Gradle plugin adds several features that are specific to building Android apps. The following table lists which version of the Android Gradle plugin is required for each version of Android Studio.
Android StudioのビルドシステムはGradleをベースにしており、Android Gradleプラグインは、Androidアプリのビルドに特化したいくつかの機能を追加します。次の表は、Android Studioの各バージョンに必要なAndroid Gradleプラグインのバージョンを示しています。
👉 Android Gradle plugin and Android Studio compatibility - Android Studio Dolphin | 2021.3.1 | Android Developers
Android Studio Dolphin | 2021.3.1
に、今現在、最適な Android Gradle Plugin
は、安定版最新の 7.3.1
です。
The following table lists which version of Gradle is required for each version of the Android Gradle plugin. For the best performance, you should use the latest possible version of both Gradle and the plugin.
次の表は、Android Gradleプラグインの各バージョンに必要なGradleのバージョンを示しています。最高のパフォーマンスを得るためには、Gradleとプラグインの両方の可能な限り最新のバージョンを使用する必要があります。
👉 Update Gradle - Android Gradle plugin release notes | Android Developers
Android Gradle Plugin
の 7.3.1
に、最適な Gradle
のバージョンは、安定版最新の 7.5.1
です。
■ 各リポジトリとダウンロード先
Android Studio
、 Android Gradle Plugin
、 Gradle
それぞれの公開してるURLを並べておきます。
👉 Download Android Studio & App Tools - Android Developers
👉 Android Gradle Plugin - Google's Maven Repository
👉 Gradle Distributions
■ まとめ
それぞれのバージョン同士に範囲があることを考えながら、その中で安定版の最新のバージョンにするのがいいでしょう。
この先には、Kotlin Gradle Plugin "org.jetbrains.kotlin:kotlin-gradle-plugin"
のバージョンなどもあったりしますが、また次の機会に書きます。
👉 【Android Studio Flamingo】dependencies をバージョンアップデートするときに確認するべき3つの相性
👉 AndroidStudio 利用する Java (JDK) の選択・設定の方法