🤔

ネイティブのAndroidでビルドエラーが起きる?

2023/08/17に公開

Flutterでは問題ないけど?

ネイティブのAndroidをキャッチアップすることになった!
で、ビルドしようとすると以下のエラーが発生する?

/Users/hashimotojunichi/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.7.10/bac80c520d0a9e3f3673bc2658c6ed02ef45a76a/kotlin-stdlib-common-1.7.10.jar!/META-INF/kotlin-stdlib-common.kotlin_module: Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.7.1, expected version is 1.5.1.

Flutterのときは、Androidでビルドできるのになぜ?

💉解決方法

Chat GPTくんに聞いてみて、ヒントをもらい解決した!

ご提示いただいた情報に基づくと、以下の2つの build.gradle ファイルがあります:

  1. プロジェクトレベルの build.gradle:
    これはプロジェクト全体の設定や全モジュールに適用されるプラグインのバージョン情報が含まれています。このファイルには、Kotlinのバージョン(1.5.30)が指定されています。

  2. モジュールレベルの build.gradle:
    このファイルは、特定のアプリケーションモジュールの設定や依存関係が記述されています。特定のアプリやライブラリのビルド設定や依存関係を定義します。

最初のエラーメッセージに基づくと、プロジェクトで使用しているKotlinのバージョン(1.5.30)と、kotlin-stdlib-commonライブラリのバージョン(1.7.10)が互換性がないため問題が生じています。

解決策として、プロジェクトレベルの build.gradle で指定されているKotlinのバージョンを1.7.10またはそれ以降の互換バージョンに更新することをおすすめします。

// プロジェクトレベルの build.gradle
plugins {
    id 'com.android.application' version '7.1.3' apply false
    id 'com.android.library' version '7.1.3' apply false
    id 'org.jetbrains.kotlin.android' version '1.7.10' apply false  // この行を変更
}

変更後、Android Studioの「Sync Now」をクリックするか、ターミナルで ./gradlew clean build を実行して変更を適用し、ビルドを行ってください。

もし他にも問題が発生する場合、その他のKotlin関連のライブラリのバージョンも更新する必要があるかもしれません。

このファイルのコードを編集
変更前

変更後

無事ビルドできました!

まとめ

build.gradleを編集して、Kotlinのバージョンを合わせることでエラーを解決することができました。ビルドできない原因は、古いバージョンのKotlinを使う指定をしているからでした。

Jboy王国メディア

Discussion