naichi's lab

3日後の自分(他人)への書き置き

【Unity】AdMob入れようとしたらエラー、メジャー・バージョン52は、このコンパイラでサポートされている最新のメジャー・バージョン51より新しいです。

久々に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が古いん?困った。

ググる

blogs.yahoo.co.jp

ググってみるとどうもメジャーバージョン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

f:id:naichilab:20160726015954p:plain

$ 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

f:id:naichilab:20160726020429p:plain

こいつか!

旧パス/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home

新パス/Library/Java/JavaVirtualMachines/jdk1.8.0_101.jdk/Contents/Home

これでビルド成功。よかったよかった。