Javaのバージョンを変更

Mac OS X(Leopard)でJava 1.6を使う際の設定メモ。


現状のバージョンを確認。

$ java -version
java version "1.5.0_16"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-b06-284)
Java HotSpot(TM) Client VM (build 1.5.0_16-133, mixed mode, sharing)

Javaのインストール先を確認。

$ pwd
/System/Library/Frameworks/JavaVM.framework/Versions
$ ls -al
total 56
drwxr-xr-x  7 root  wheel  476 10  6 05:53 .
drwxr-xr-x  3 root  wheel  408 11  9 17:43 ..
lrwxr-xr-x  1 root  wheel    5 10  6 05:53 1.3 -> 1.3.1
drwxr-xr-x  3 root  wheel  102  1 14  2008 1.3.1
lrwxr-xr-x  1 root  wheel    5 10  6 05:53 1.4 -> 1.4.2
lrwxr-xr-x  1 root  wheel    3  5 18  2008 1.4.1 -> 1.4
drwxr-xr-x  8 root  wheel  272  3 13  2008 1.4.2
lrwxr-xr-x  1 root  wheel    5 10  6 05:53 1.5 -> 1.5.0
drwxr-xr-x  8 root  wheel  272  3 13  2008 1.5.0
lrwxr-xr-x  1 root  wheel    5 10  6 05:53 1.6 -> 1.6.0
drwxr-xr-x  8 root  wheel  272  5 18  2008 1.6.0
drwxr-xr-x  6 root  wheel  272 10  6 05:53 A
lrwxr-xr-x  1 root  wheel    1 10  6 05:53 Current -> A
lrwxr-xr-x  1 root  wheel    3 10  6 05:53 CurrentJDK -> 1.5

すでに1.6.0がインストール済み。


/Applications/Utilities/JavaJava Preferences.appを起動。
Java SE 6の優先度を上げます。


バージョン確認。

$ java -version
java version "1.6.0_07"
Java(TM) SE Runtime Environment (build 1.6.0_07-b06-153)
Java HotSpot(TM) 64-Bit Server VM (build 1.6.0_07-b06-57, mixed mode)

1.6.0になりました。
/System/Library/Frameworks/JavaVM.framework/Versions以下を確認すると、CurrentJDKは1.5へのシンボリックリンクのままです。

lrwxr-xr-x  1 root  wheel    1  1  8 07:20 Current -> A
lrwxr-xr-x  1 root  wheel    3  1  8 07:29 CurrentJDK -> 1.5

Javaのパスを確認

$ which java
/usr/bin/java
$ ls -al /usr/bin/java
lrwxr-xr-x  1 root  wheel  74  1  8 07:19 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

実行されているのは、/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javaになっていて、CurrentはAへのシンボリックリンクになっています。
この/System/Library/Frameworks/JavaVM.framework/Versions/Aの存在理由とか、Java Preferencesの設定との関連とか良く分かりません><


最後に、Apple - Support - Downloadsを適用。


環境変数JAVA_HOMEを使った方法でも問題ないと思います。
~/.profileへ追記。

JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home
export JAVA_HOME
PATH=${JAVA_HOME}/bin:$PATH 

設定反映

$ source .profile