日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Ubuntu >内容正文

Ubuntu

RedHat下JDK1.6安装-利用alternative实现多版本并存(Ubuntu同理)

發布時間:2023/12/13 Ubuntu 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RedHat下JDK1.6安装-利用alternative实现多版本并存(Ubuntu同理) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

雖然本文講的是RH下面的配置,不過Ubuntu里也是一樣的!

RedHat es下安裝過程很簡單,Sun下載JDK1.6包,解壓,然后rpm安裝

安裝完后,在etc/profile.d/下建立java.sh,代碼如下

JAVA_HOME=/usr/java/jdk1.6.0

PATH=$PATH: $JAVA_HOME/bin

CLASSPATH=.: $JAVA_HOME/lib/dt.jar: $JAVA_HOME/lib/tools.jar

export JAVA_HOME PATH CLASSPATH

注銷

重新登陸

特別注意:設置變量時,RedHat下變量分隔符為 冒號 : 而不是Win系的 分
號 ;

[root@localhost ~]# echo $CLASSPATH

.:/usr/java/jdk1.6.0/lib/dt.jar:/usr/java/jdk1.6.0/lib/tools.jar

[root@localhost ~]# echo $PATH

/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:

/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/usr/java/jdk1.6.0/bin:/root/bin:

/usr/java/jdk1.6.0/bin

[root@localhost ~]# echo $JAVA_HOME

/usr/java/jdk1.6.0

問題:很不幸,控制臺下 java -version,我看到的卻是1.4.0

原來我的系統中已經安裝過其他java版本

難道安裝sun新版jdk前需要卸載這個jdk1.4.0?

google 后發現,原來RedHat下遠沒有Win系統這么麻煩。RedHat中有一種可替代系統(alternatives system)機制, 來抽象出不同軟件或者同一軟件不同版本運行時的位置和“商標”,以消除更替環境的需要。而update-alternatives 就是這種機制的的實現。因此可以用update-alternatives 來實現兩個jdk并存,并且根據需要方便切換。

首選 update-alternatives --dispaly java,看看當前java軟件的當前配置,尤其是路徑的優先級

然后我們配置java軟件配置,使其使用我們剛才的JDK1.6

update-alternatives --config java

如果一切順利這時候我們可以看到系統中可供使用的java配置方案。不過由于JDK1.6版本比較新,我本身的RedHat無法檢測到,所以需要利用update-alternatives --install選項手工添加再可選擇列表中

我們采用 update-alternatives --install 選項,賦予JDK1.6這新JVM最高的級別(設置為60),以達到添加如列表中的目的,具體如下

# update-alternatives --install /usr/bin/java java /usr/java/jdk1.6.0/jre/bin/java 60
--slave /usr/share/man/man1/java.1.gz java.1.gz /usr/lib/jvm/jdk1.6.0/man/man1/java.1

然后update-alternatives --config java選擇添加的JDK1.6配置方案

這時如果在終端下查看java -version,就會看到1.6字樣

注:由于update-alternatives本質是利用ln的方式實現影射的方式來實現可替代系統

因此具體使用時,我們也可以通過命令查看其映像路徑,進而了解其影射細節。以java為例

終端下 # which java

/usr/lib/java

#ls -l usr/lib/java

即可得到其影射路徑,依次下去,即可看到此命令最終使用的是那個文件,以達到了解其影射細節的目的

轉載于:https://www.cnblogs.com/earl86/archive/2008/10/26/1666545.html

總結

以上是生活随笔為你收集整理的RedHat下JDK1.6安装-利用alternative实现多版本并存(Ubuntu同理)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。