まずは気まぐれでyumでデフォのJavaをインストしてみる。
# yum install java
Loaded plugins: downloadonly, fastestmirror, priorities, security
Loading mirror speeds from cached hostfile
* base: www.ftp.ne.jp
* epel: ftp.kddilabs.jp
* extras: www.ftp.ne.jp
* rpmforge: ftp.kddilabs.jp
* updates: www.ftp.ne.jp
94 packages excluded due to repository priority protections
Setting up Install Process
Resolving Dependencies
–> Running transaction check
—> Package java-1.5.0-gcj.x86_64 0:1.5.0.0-29.1.el6 will be installed
–> Processing Dependency: sinjdoc for package: java-1.5.0-gcj-1.5.0.0-29.1.el6.x86_64
–> Running transaction check
—> Package sinjdoc.x86_64 0:0.5-9.1.el6 will be installed
–> Processing Dependency: java_cup >= 0.10 for package: sinjdoc-0.5-9.1.el6.x86_64
–> Running transaction check
—> Package java_cup.x86_64 1:0.10k-5.el6 will be installed
–> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
java-1.5.0-gcj x86_64 1.5.0.0-29.1.el6 base 139 k
Installing for dependencies:
java_cup x86_64 1:0.10k-5.el6 base 197 k
sinjdoc x86_64 0.5-9.1.el6 base 705 k
Transaction Summary
================================================================================
Install 3 Package(s)
Total download size: 1.0 M
Installed size: 3.0 M
Is this ok [y/N]: y
Downloading Packages:
(1/3): java-1.5.0-gcj-1.5.0.0-29.1.el6.x86_64.rpm | 139 kB 00:00
(2/3): java_cup-0.10k-5.el6.x86_64.rpm | 197 kB 00:00
(3/3): sinjdoc-0.5-9.1.el6.x86_64.rpm | 705 kB 00:00
——————————————————————————–
Total 1.1 MB/s | 1.0 MB 00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
Installing : java-1.5.0-gcj-1.5.0.0-29.1.el6.x86_64 1/3
Installing : 1:java_cup-0.10k-5.el6.x86_64 2/3
Installing : sinjdoc-0.5-9.1.el6.x86_64 3/3
Verifying : 1:java_cup-0.10k-5.el6.x86_64 1/3
Verifying : sinjdoc-0.5-9.1.el6.x86_64 2/3
Verifying : java-1.5.0-gcj-1.5.0.0-29.1.el6.x86_64 3/3
Installed:
java-1.5.0-gcj.x86_64 0:1.5.0.0-29.1.el6
Dependency Installed:
java_cup.x86_64 1:0.10k-5.el6 sinjdoc.x86_64 0:0.5-9.1.el6
Complete!
# java -version
java version “1.5.0”
gij (GNU libgcj) version 4.4.7 20120313 (Red Hat 4.4.7-3)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
もし
# java -version
-bash: /usr/bin/java: そのようなファイルやディレクトリはありません
と冷たくアシラワレたら、
# alternatives –config java
で見てみよう。
多分、過去の残骸が残っているせいだ。間違いは正してあげよう。
JDK7を入れてみる。
OracleのページからDL。
鯖にWinFTPで転送。
# rpm -ivh jdk-7u40-linux-x64.rpm
準備中… ########################################### [100%]
1:jdk ########################################### [100%]
Unpacking JAR files…
rt.jar…
jsse.jar…
charsets.jar…
tools.jar…
localedata.jar…
jfxrt.jar…
# java -version
java version “1.5.0”
gij (GNU libgcj) version 4.4.7 20120313 (Red Hat 4.4.7-3)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
どうやら切り替えないとダメらしい。
# ls -l /usr/bin/java*
lrwxrwxrwx 1 root root 22 10月 11 00:12 2013 /usr/bin/java -> /etc/alternatives/java
lrwxrwxrwx 1 root root 27 10月 11 00:15 2013 /usr/bin/javac -> /usr/java/default/bin/javac
lrwxrwxrwx 1 root root 29 10月 11 00:15 2013 /usr/bin/javadoc -> /usr/java/default/bin/javadoc
lrwxrwxrwx 1 root root 28 10月 11 00:15 2013 /usr/bin/javaws -> /usr/java/default/bin/javaws
やはり残骸が残っている。
# alternatives –install /usr/bin/java java /usr/java/default/bin/java 17040
でjdk7を登録して
# alternatives –config java
2 プログラムがあり ‘java’ を提供します。
選択 コマンド
———————————————–
* 1 /usr/java/default/bin/java
+ 2 /usr/lib/jvm/jre-1.5.0-gcj/bin/java
Enter を押して現在の選択 [+] を保持するか、選択番号を入力します: 1
とか出るだろう。
# java -version
java version “1.7.0_40”
Java(TM) SE Runtime Environment (build 1.7.0_40-b43)
Java HotSpot(TM) 64-Bit Server VM (build 24.0-b56, mixed mode)
これでいいはず。
# alternatives –display java
java – ステータスは手動です。
リンクは現在 /usr/lib/jvm/jre-1.5.0-gcj/bin/java を指しています。
/usr/java/default/bin/java – 優先項目 17040
スレーブ keytool: (null)
スレーブ rmiregistry: (null)
スレーブ jre_exports: (null)
スレーブ jre: (null)
/usr/lib/jvm/jre-1.5.0-gcj/bin/java – 優先項目 1500
スレーブ keytool: /usr/lib/jvm/jre-1.5.0-gcj/bin/keytool
スレーブ rmiregistry: /usr/lib/jvm/jre-1.5.0-gcj/bin/rmiregistry
スレーブ jre_exports: /usr/lib/jvm-exports/jre-1.5.0-gcj
スレーブ jre: /usr/lib/jvm/jre-1.5.0-gcj
現在の「最適」バージョンは /usr/java/default/bin/java です。
と出るので多分大丈夫。
とは云え、keytoolなどが(null)なのは気味が悪い。
# keytool
-bash: /usr/bin/keytool: そのようなファイルやディレクトリはありません
だからね。
OpenJDKに切り替えればまた使えるようになるが・・・
# alternatives --remove java /usr/java/default/bin/java で一旦消して # JDK=/usr/java/jdk1.7.0_40 # alternatives \ --install /usr/bin/java java $JDK/bin/java 17040 \ --slave /usr/bin/keytool keytool $JDK/bin/keytool \ --slave /usr/bin/rmiregistry rmiregistry $JDK/bin/rmiregistry \ --slave /usr/lib/jvm-exports/jre jre_exports $JDK/lib \ --slave /usr/lib/jvm/jre jre $JDK/jre
で再登録。
# alternatives –display java
java -ステータスは自動です。
リンクは現在 /usr/java/jdk1.7.0_40/bin/java を指しています。
/usr/java/jdk1.7.0_40/bin/java – 優先項目 17040
スレーブ keytool: /usr/java/jdk1.7.0_40/bin/keytool
スレーブ rmiregistry: /usr/java/jdk1.7.0_40/bin/rmiregistry
スレーブ jre_exports: /usr/java/jdk1.7.0_40/lib
スレーブ jre: /usr/java/jdk1.7.0_40/jre
/usr/lib/jvm/jre-1.5.0-gcj/bin/java – 優先項目 1500
スレーブ keytool: /usr/lib/jvm/jre-1.5.0-gcj/bin/keytool
スレーブ rmiregistry: /usr/lib/jvm/jre-1.5.0-gcj/bin/rmiregistry
スレーブ jre_exports: /usr/lib/jvm-exports/jre-1.5.0-gcj
スレーブ jre: /usr/lib/jvm/jre-1.5.0-gcj
現在の「最適」バージョンは /usr/java/jdk1.7.0_40/bin/java です。
これでkeytoolなんかも使えるようになったハズ。