久々にUnityでAndroidアプリを作っていて、AdMobプラグインをインストールしたらビルドエラー。
環境
- Mac OS X El Capitan 10.11.5
- Unity 5.3.5f1
- Google Mobile Ads Unity Plugin v3.0.5
Release Google Mobile Ads Unity Plugin v3.0.5 · googleads/googleads-mobile-unity · GitHub
ビルドエラー
Failed to compile resources with the following parameters
警告: /Users/naichi/Library/Android/sdk/platforms/android-24/android.jar(java/lang/Object.class): メジャー・バージョン52は、このコンパイラでサポートされている最新のメジャー・バージョン51より新しいです。 コンパイラのアップグレードをお薦めします。 警告: /Users/naichi/Library/Android/sdk/platforms/android-24/android.jar(java/lang/AutoCloseable.class): メジャー・バージョン52は、このコンパイラでサポートされている最新のメジャー・バージョン51より新しいです。 コンパイラのアップグレードをお薦めします。 警告2個
javaが古いん?困った。
ググる
ググってみるとどうもメジャーバージョン51というのはJDK 1.7らしい。
ターミナルでバージョン見てみると確かに1.7だ。
$ java -version java version "1.7.0_79" Java(TM) SE Runtime Environment (build 1.7.0_79-b15) Java HotSpot(TM) 64-Bit Server VM (build 24.79-b02, mixed mode)
JDK1.8を入れる
解決するか知らんがとりあえず最新の1.8入れてみることに。
Java SE Development Kit 8 - Downloads
$ java -version java version "1.8.0_101" Java(TM) SE Runtime Environment (build 1.8.0_101-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)
更新された。
もっかいビルド
ダメだった。同じエラー。
Unity再起動して再チャレンジ。ダメだった。
UnityのJDK設定を変更
Unity -> Preference -> External Tools -> Android JDK
こいつか!
旧パス/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
新パス/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home
これでビルド成功。よかったよかった。