Mac OS X(Mountain Lion)におけるJavaのインストールディレクトリ

バージョン情報で表示されているJavaのランタイムはどこを指しているのだ??

答えは /Library/Java/javaVirtualMachines/だった。
バージョン違いのランタイムもここにインストールされるようだ。

従ってJava7インストール直後のJAVA_HOME環境変数を設定するのならば以下になる。※

/Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdk/Contents/Home

と思ったのだが、コメントで頂いたようにこのパスへリンクしている

/usr/libexec/java_home

を使うのが正解のようだ。(バージョン毎にリンク先が自動的に変えられるのだろう)

そこでとJava7をインストールするに辺り、Java6を完全にアンインストールしてやろうと以下のディレクトリをばっさり消したら、インストールしてあるはずのJava7まで認識されなくなってしまった。

/System/Library/Java/JavaVirtualMachines/

なので、"java -version"を実行したりEclipseを起動したりすると、OSインストール後初めてjavaを使うのと同じようにJava SE6のインストールを促されるのだが、その通りに実行すると有効になっているのはJava7なのである。

なお、インストールされているAppleSDKOracleSDKはアプリケーション->ユーティリティ->Java Preferences.appを起動することで優先度を変えることができる。

それにしてもMac OS X(Mountain Lion?)のJavaのインストール構成がさっぱり判らない。/System/Library/Java/の下って一種のプロキシで、そこへのアクセスは現在有効な仮想マシンにリダイレクトされるとかなのだろうか。

Eclipseの設定はSDKの優先度に合わせてなぜか自動的に書き換わるようだ。