[OS X] [Env] [Java] Java SE 7 と Java SE 6 との共存

スポンサーリンク

Java SE 7 と Java SE 6 との共存

環境

Mountain Lion 10.8.2

Java のインストール

JAVA_HOME

Mountain Lion は,デフォルトでは ~/.profile が存在しないようです.
そのため,~/.profile を作成し,その中で JAVA_HOME を定義します.

$ vi ~/.profile

Oracle Java SE 7 の場合,最新のバージョンの java コマンドは
/System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java
にあります.
ただ,これだと $JAVA_HOME/bin が存在しないので,
/Library/Java/JavaVirtualMachines/jdk1.7.0_10.jdk/Contents/Home/bin/java
の方を使用します.(最新が Java SE 7u10 の場合)
.profile に下記を記述します.

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_10.jdk/Contents/Home
export PATH=$PATH:$JAVA_HOME/bin

複数のバージョンの Java SE 7 をインストールしている場合,
/Library/Java/JavaVirtualMachines
で確認できます.
この中に jdk1.7.0_09.jdk, jdk1.7.0_10.jdk と,バージョン毎にフォルダがあります.
よって,最新のバージョンではなく,ひとつ前のバージョン (この場合,10 ではなく 9) で JAVA_HOME を設定したい場合は,.profile に下記のように記述します.

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_09.jdk/Contents/Home
export PATH=$PATH:$JAVA_HOME/bin

Apple Java SE 6 の場合, java コマンドは
/Library/Java/Home/bin/java
にあるので,.profile に下記を記述します.
ちなみに,実体は
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java
です.

export JAVA_HOME=/Library/Java/Home
export PATH=$PATH:$JAVA_HOME/bin

.profile 設定後は source コマンドを実行し,設定を反映させます.

$ source ~/.profile

参考情報

How do I switch between Java 7 and Java 6 on OS X 10.8.2?
http://superuser.com/questions/490425/how-do-i-switch-between-java-7-and-java-6-on-os-x-10-8-2

その他

OS X で java を検索するとたくさん出てくる.

$ sudo find / -name "java"
EnvJavaOS X
スポンサーリンク
コピペワールド