「android studio が予期しない理由で終了しました」を起動させる
久し振りにAndroid Studioを立ち上げようとしたら"android studio が予期しない理由で終了しました"というダイアログが出て立ち上がらなかった。
設定やJAVA_HOMEを見なおしたけど問題なし。
でも結果としてはきっと古いjavaが使われているのだろうなあと想像。1.6が使われているっぽい。
ログがどこに出ているのかわからないのでターミナルから起動してみる。
/Applications/Android\ Studio.app/Contents/MacOS/studio 2015-03-13 23:53:31.089 studio[904:42467] Value of STUDIO_JDK: (null) 2015-03-13 23:53:31.113 studio[904:42467] fullFileName is: /Applications/Android Studio.app/Contents/bin/studio.vmoptions 2015-03-13 23:53:31.113 studio[904:42467] fullFileName exists: /Applications/Android Studio.app/Contents/bin/studio.vmoptions 2015-03-13 23:53:31.114 studio[904:42467] Value of STUDIO_VM_OPTIONS is (null) 2015-03-13 23:53:31.114 studio[904:42467] Processing VMOptions file at /Applications/Android Studio.app/Contents/bin/studio.vmoptions 2015-03-13 23:53:31.115 studio[904:42467] Done 2015-03-13 23:53:31.115 studio[904:42467] Processing VMOptions file at /Users/kappa/Library/Preferences/AndroidStudio/studio.vmoptions 2015-03-13 23:53:31.117 studio[904:42467] No content found 2015-03-13 23:53:31.117 studio[904:42467] Processing VMOptions file at 2015-03-13 23:53:31.117 studio[904:42467] No content found dyld: lazy symbol binding failed: Symbol not found: _CGContextSetAllowsAcceleration Referenced from: /Library/Java/JavaVirtualMachines/1.6.0_51-b11-457.jdk/Contents/Libraries/libawt.jnilib Expected in: /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices dyld: Symbol not found: _CGContextSetAllowsAcceleration Referenced from: /Library/Java/JavaVirtualMachines/1.6.0_51-b11-457.jdk/Contents/Libraries/libawt.jnilib Expected in: /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices Trace/BPT trap: 5
うむ。1.6が使われているのが確定。
「mac java 削除」ググってこちらの記事を見つけました。
Apple版Java6をすっきりアンインストールする
まずは1.6を再確認する。
ls -al /Library/Java/JavaVirtualMachines/ total 0 drwxr-xr-x 6 root wheel 204 3 13 23:49 ./ drwxrwxr-x 6 root wheel 204 3 12 23:08 ../ drwxr-xr-x 3 root wheel 102 3 11 01:17 1.6.0_51-b11-456.jdk/ drwxr-xr-x 3 root wheel 102 3 11 01:02 1.6.0_51-b11-457.jdk/ drwxr-xr-x 3 root wheel 102 3 11 00:56 jdk1.7.0_40.jdk/ drwxr-xr-x 3 root wheel 102 3 12 23:08 jdk1.8.0_25.jdk/
確かに1.6がまだいる。
どうやらこれが使われているから起動に失敗する模様。
という訳でどけてみる。
mkdir -p ~/tmp/java sudo mv /Library/Java/JavaVirtualMachines/1.6.0* ~/tmp/java/
そしてAndroid StudioをDockからクリックして起動。
うごいたー。