Oracle Java を Ubuntu 12.04 に入れてみる

できれば /opt 配下希望。
とりあえず Oracle 方面から jdk1.7.0_06 を download して /opt 配下に展開。その後、/usr/lib/jvm 配下に symlink を張ります。

$ sudo ln -s /opt/OracleJava/jdk1.7.0_06 /usr/lib/jvm/jdk1.7.0_06

で、update-alternatives するのか。。

$ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0_06/bin/java" 1
$ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0_06/bin/javac" 1 
$ sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0_06/bin/javaws" 1

動作確認

以下。

$ java -version
java version "1.7.0_03"
OpenJDK Runtime Environment (IcedTea7 2.1.1pre) (7~u3-2.1.1~pre1-1ubuntu3)
OpenJDK 64-Bit Server VM (build 22.0-b10, mixed mode)
$

う。駄目じゃん。update-alternatives display ?

$ sudo update-alternatives --display java
java - auto mode
  link currently points to /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java
/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java - priority 1051
  slave java.1.gz: /usr/lib/jvm/java-7-openjdk-amd64/jre/man/man1/java.1.gz
/usr/lib/jvm/jdk1.7.0_06/bin/java - priority 1
Current 'best' version is '/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java'.
$

優先度下げるか。

$ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java" -1
update-alternatives: using /usr/lib/jvm/jdk1.7.0_06/bin/java to provide /usr/bin/java (java) in auto mode.
$ sudo update-alternatives --display java
java - auto mode
  link currently points to /usr/lib/jvm/jdk1.7.0_06/bin/java
/usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java - priority -1
/usr/lib/jvm/jdk1.7.0_06/bin/java - priority 1
Current 'best' version is '/usr/lib/jvm/jdk1.7.0_06/bin/java'.
$

javac も同様な設定変更を。

~$ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/java-7-openjdk-amd64/bin/javac" -1
update-alternatives: using /usr/lib/jvm/jdk1.7.0_06/bin/javac to provide /usr/bin/javac (javac) in auto mode.
$ sudo update-alternatives --display javac
javac - auto mode
  link currently points to /usr/lib/jvm/jdk1.7.0_06/bin/javac
/usr/lib/jvm/java-7-openjdk-amd64/bin/javac - priority -1
/usr/lib/jvm/jdk1.7.0_06/bin/javac - priority 1
Current 'best' version is '/usr/lib/jvm/jdk1.7.0_06/bin/javac'.
$

これで準備完了かな。
OracleJava が不要になったら

  • sudo update-alternatives --remove java で削除
  • /opt/OracleJava 削除

で良いのかどうか。つうか、なんとなくでびあんパケジ不要じゃん、てあたりが若干微妙。