1.8
から1.6
にダウングレードするために、Java alternatives
を使用しようとしています。これは--set
経由選択肢で正しく設定されているにもかかわらずしかしJavaのバージョンは、まだ1.8
を返します。/usr/bin/javaが/ usr/java/default/bin/javaにリンクするのはなぜですか?
ls -la /usr/bin/java
lrwxrwxrwx 1 root root 26 Mar 31 11:27 /usr/bin/java -> /usr/java/default/bin/java
ls -la /usr/java/
total 20
drwxr-xr-x 4 root root 4096 Mar 31 11:30 .
drwxr-xr-x 16 root root 4096 Oct 7 11:41 ..
lrwxrwxrwx 1 root root 16 Mar 31 11:27 default -> /usr/java/latest
drwxr-xr-x 7 root root 4096 Mar 31 11:27 jre1.6.0_37
drwxr-xr-x 7 root root 4096 Mar 31 11:30 jre1.8.0_66
lrwxrwxrwx 1 root root 21 Mar 31 11:30 latest -> /usr/java/jre1.8.0_66
私が持っている:
Selection Command
-----------------------------------------------
*+ 1 /usr/java/jre1.6.0_37/bin/java
2 /usr/java/jre1.8.0_66/bin/java
java -version
java version "1.8.0_66"
よく見ると、その後/usr/bin/java
は常にための最新バージョンをポイントすることが明らかになりました2つのRHEL 5.10/11システムでこれを体験しました。 CentOSでこれを複製しようとしている間に、私は/usr/bin/java
が/etc/alternatives/java
にリンクしていることに気づいた。私のRHELシステム上に戻る
/etc/alternatives/java
を見て:それは
/usr/bin/java
が
/etc/alternatives/java
にリンクする必要があることを意味正しいバージョンにリンクして期待されるように
ls -la /etc/alternatives/
total 24
drwxr-xr-x 2 root root 4096 Mar 31 12:02 .
drwxr-xr-x 78 root root 12288 Sep 25 2012 ..
lrwxrwxrwx 1 root root 30 Mar 31 12:02 java -> /usr/java/jre1.6.0_37/bin/java
。
これがデフォルトの動作ではないのはなぜですか?ダウングレードを管理するためにシンボリックリンクを '/ etc/alternatives/java'に変更するだけですか?
なぜなら、 '/ usr/bin/java'がデフォルトで最新のものを指していて、 'etc/alternatives/java'を指していない理由を説明していますか?ダウングレードを管理するために '/ etc/alternatives/java'へのシンボリックリンクを変更するだけですか? – kaizenCoder
既存の質問については、私の問題はダウングレードしています。アップグレードは期待どおりに動作し、 '/ usr/bin/java'がシンボリックリンクする場所にローカライズされます。 – kaizenCoder