エラー内容
メッセージ
ある日UnityでAndroidアプリをビルドしようとすると以下のようなエラーが発生して書き出しに失敗した。
エラー800個て…どういうことやねん…
環境
OS:macOS Big Sur 11.0.1
Unity:2019.4.2f1
iOSアプリとしてビルドする分にはエラーは発生しないのでアプリ自体ではなくAndroidビルドに問題がある模様。
エラーの概要
エラーメッセージを翻訳してみるとこんな感じ、
check release duplicate classes
重複しているクラスを確認してください。
どうやらクラスが重複しているらしい。
そして下段に続く800ものエラーメッセージはその重複しているクラスを教えてくれている模様。
解消方法
Duplicate class〜から始まるエラーメッセージをクリックすると以下のように説明してくれる。
Duplicate class androidx.core.provider.FontsContractCompat$3 found in modules classes.jar (:androidx.core.core-1.0.0:) and classes.jar (:core-1.1.0:)
赤マーカで示した部分である「androidx.core.core-1.0.0」と「core-1.1.0」で「androidx.core.provider.FontsContractCompat」というクラスが重複しているらしい。
「core-1」で検索をかけてみると確かに二つのファイルが出てきたので、思い切ってバージョンが小さい方(今回はandroidx.core.core-1.0.0)を消してみることにした。
そして他のエラーメッセージも同じような内容だったので、全てバージョンが小さそうな方を消していってもう一度ビルドしてみる。
…無事ビルド成功!やったね!
原因の考察
AdMobやNCMB,アドフリくんなど様々なプラグインをインポートする中でどこかの2つでバージョン違いの同機能のものが入ってしまったと思われる。
↓役に立ったらシェアしてね↓