歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> CentOS 7 下安裝JDK 1.8

CentOS 7 下安裝JDK 1.8

日期:2017/2/28 14:24:56   编辑:Linux教程

CentOS 7下目前默認是jdk1.6和1.7。若需要更高版本的1.8,我們就需要一點額外的手段了。

首先,我們需要從這個頁面下個最新版本的jdk. Oracle提供rpm包和tar.gz包.為了省事,直接下載個rpm包完事.

下載完成後,可以用rpm命令安裝,不過懶人更喜歡用yum搞定。

# yum localinstall jdk-8u20-linux-x64.rpm -y
...
Resolving Dependencies
--> Running transaction check
---> Package jdk1.8.0_20.x86_64 2000:1.8.0_20-fcs will be installed
--> Finished Dependency Resolution
...
Installed:
jdk1.8.0_20.x86_64 2000:1.8.0_20-fcs

Complete!

安裝完畢後,為了節省空間,rpm包也可以刪除了.

這套jdk其實是在/usr/java目錄下配置了一套環境。查看此目錄,我們可以看到目錄下多了個jdk1.8.0_20,同時用軟鏈鏈接到了default和last兩個目錄下.

$ ls -al /usr/java
total 12
drwxr-xr-x. 3 root root 4096 Oct 13 22:10 .
drwxr-xr-x. 15 root root 4096 Jul 31 04:27 ..
lrwxrwxrwx. 1 root root 16 Oct 13 22:10 default -> /usr/java/latest
drwxr-xr-x. 9 root root 4096 Oct 13 22:10 jdk1.8.0_20
lrwxrwxrwx. 1 root root 21 Oct 13 22:10 latest -> /usr/java/jdk1.8.0_20

但到目前為止它並沒有被實際使用.我們需要通過alternative工具來管理.

因為軟鏈接的原因,若我們將此次配置的內容指向/usr/java/default/bin/xxx , 以後安裝jdk 1.9乃至2.0的話,只要直接修改下軟鏈接即可,而不必再這麼搞一遍. 因此下面我將使用 /usr/java/default/ 為新的java home。

但是,偶然路過的你,若並不打算這麼搞,而是希望指定使用jdk1.8.0_20這個版本而不希望有改變,請自行將default替換為jdk1.8.0_20。下面類似情況皆是如此,敬請注意。

首先,我們先查看下當前的alternative環境.

# alternatives --config java

There is 1 program that provides 'java'.

Selection Command
-----------------------------------------------
*+ 1 /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64/jre/bin/java

Enter to keep the current selection[+], or type selection number: ^C

我們注意到,alternatives中已經有了一個java,而我們的目標就是在不破壞原來環境的情況下增加的一個1.8.當然,一切完畢後,諸位也可以試著自行刪掉rpm包安裝的那份.

我們首先將java加入alternative

# alternatives --install /usr/bin/java java /usr/java/default/bin/java 2

幾個參數都比較好懂,就是將可執行文件/usr/java/default/bin/java軟鏈接到/usr/bin/java,配置名為java,最後一個參數2是因為我們之前就看到,我們已經有了一個java了,所以index選擇為2.

然後繼續配置

# alternatives --config java

There are 2 programs which provide 'java'.

Selection Command
-----------------------------------------------
*+ 1 /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64/jre/bin/java
2 /usr/java/default/bin/java

Enter to keep the current selection[+], or type selection number: 2

我們發現多出來了一個選擇,指向我們新安裝的/usr/java/defalut/bin/java 。選擇該命令即可。

再去查看:

# alternatives --config java

There are 2 programs which provide 'java'.

Selection Command
-----------------------------------------------
* 1 /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64/jre/bin/java
+ 2 /usr/java/default/bin/java

Enter to keep the current selection[+], or type selection number: 2

我們發現+號已經移到了下面.

同樣的,我們再配置下剩余的

# alternatives --install /usr/bin/jar jar /usr/java/default/bin/jar 2
# alternatives --install /usr/bin/javac javac /usr/java/default/bin/javac 2
# alternatives --set jar /usr/java/default/bin/jar
# alternatives --set javac /usr/java/default/bin/javac

這樣就搞定了.

最後,我們可以驗證下:

$ java -version
java version "1.8.0_20"
Java(TM) SE Runtime Environment (build 1.8.0_20-b26)
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b23, mixed mode)
$ javac -version
javac 1.8.0_20

最後,我們可能需要配置一下環境變量。
環境變量普通用戶下配置即可。
可以直接寫

$ export JAVA_HOME=/usr/java/default

以及其他blabla。

不過,我們也可以將其寫入配置文件。具體根據使用shell而定。若使用的是bash,可以在~/.bashrc或者~/.bash_profile中添加內容如下:

export JAVA_HOME=/usr/java/default
export JRE_HOME=/usr/java/default/jre
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

Ubuntu下安裝JDK7(附Clojure下載) http://www.linuxidc.com/Linux/2012-10/71557.htm

Ubuntu 12.04下安裝JDK1.7 http://www.linuxidc.com/Linux/2012-06/62239.htm

CentOS6.3安裝JDK和環境配置 http://www.linuxidc.com/Linux/2012-09/70780.htm

更多CentOS相關信息見CentOS 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=14

Copyright © Linux教程網 All Rights Reserved