【Linux】Ubuntu修改默認JDK

Ubuntu修改默認JDK

OpenJDK和JDK的區別

​ 在大多數LINUX發行版本里,內置或者經過軟件源安裝JDK的話,都是安裝的OpenJDK。JDK具體指的是SunJDK(更確切的說是OracleJDK)。html

​ OpenJDK是JDK的開放原始碼版本,以GPL協議的形式放出。在JDK7的時候,OpenJDK已經成爲JDK7的主幹開發,Sun JDK7是在OpenJDK7的基礎上發佈的,其大部分原始碼都相同,只有少部分原始碼被替換掉。java

​ 關於OpenJDK和JDK的區別好幾個方面,此處只說明最直觀、開發人員更爲關心的一點區別:linux

OpenJDK不包含其餘的軟件包,好比Rhino Java DB JAXP……,而且能夠分離的軟件包也都是儘可能的分離,可是這大多數都是自由軟件,你能夠本身下載加入。也就是說OpenJDK裏面有不少可能常常用的類庫是不存在的。所以一般咱們會用SunJDK來替換Linux內置的OpenJDK。

JDK替換OpenJDK

下載JDK的壓縮包

從oracle官網下載JDK:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htmlweb

### 解壓壓縮包shell

進入下載目錄ubuntu

cd ~/Download

解壓tar.gz包vim

tar -zxvf jdk-8u181-linux-x64.tar.gz

移動JDKoracle

sudo mv jdk1.8.0_181/  /usr/lib/jvm/jdk1.8.0_181/

配置JDK

修改配置文件jvm

sudo vim /etc/profile

在文件末尾添加一下內容svg

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_181
export CLASSPATH=/usr/lib/jvm/jdk1.8.0_181/lib
export PATH=$PATH:$JAVA_HOME/bin:$CLASSPATH

是配置生效

source /etc/profile

配置默認JDK

建立新的java版本,在shell用update-alternatives命令建立新的系統命令連接:

sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.8.0_181/bin/javac  1171
sudo update-alternatives --install /usr/bin/java java  /usr/lib/jvm/jdk1.8.0_181/bin/java  1171
sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.8.0_181jar 1171   
sudo update-alternatives --install /usr/bin/javah javah /usr/lib/jvm/jdk1.8.0_181/bin/javah 1171   
sudo update-alternatives --install /usr/bin/javap javap /usr/lib/jvm/jdk1.8.0_181/bin/javap 1171

update-alternatives是ubuntu系統中專門維護系統命令連接符的工具,後面的1171是用來指定當前連接的優先級,最高的優先級將自動被設置爲默認版本。能夠用下面的命令查看JAVA的版本和優先級:

update-alternatives --display java

選擇JAVA的版本

執行命令

update-alternatives --config java

出現一下內容

There are 3 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/jdk1.8.0_181/bin/java               1171      auto mode
  1            /usr/lib/jvm/java-10-openjdk-amd64/bin/java      1101      manual mode
  2            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode
* 3            /usr/lib/jvm/jdk1.8.0_181/bin/java               1171      manual mode

選擇你所安裝的版本:3

配置結束,執行如下命令查看是否替換成功:

java -version

java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)