在我們繼續瞭解如何安裝Java之前,讓我們快速地瞭解JRE、OpenJDK和Oracle JDK之間的不同之處。
JRE(Java Runtime Environment),它是你運行一個基於Java語言應用程式的所正常需要的環境。如果你不是一個程式員的話,這些足夠你的需要。
JDK代表Java開發套件,如果你想做一些有關Java的開發(閱讀程式),這正是你所需要的。
OpenJDK是Java開發套件的開源實現,Oracle JDK是Java開發套件的官方Oracle版本。儘管OpenJDK已經足夠滿足大多數的案例,但是許多程式
比如Android Studio建議使用Oracle JDK,以避免UI/效能問題。
檢驗
首先我們來檢查Java是否已經安裝在Ubuntu上。
開啟終端,使用下面的命令:
java -version
如果你看到像下面的輸出,這就意味著你並沒有安裝過Java:
The program ‘java’ can be found in the following packages:* default-jre* gcj-4.6-jre-headless* openjdk-6-jre-headless* gcj-4.5-jre-headless* openjdk-7-jre-headlessTry: sudo apt-get install
安裝 (1)命令列安裝
在Ubuntu和Linux上安裝JRE
開啟終端,使用下面的命令安裝JRE:
sudo apt-get install default-jre
在Ubuntu和Linux上安裝OpenJDK
在終端,使用下面的命令安裝OpenJDK Java開發套件:
sudo apt-get install default-jdk
特殊地,如果你想要安裝Java 7或者Java 6等等,你可以使用openjdk-7-jdk/openjdk-6jdk,但是記住在此之前安裝openjdk-7-jre/openjdk-6-jre。
在Ubuntu和Linux Mint上安裝Oracle JDK 使用下面的命令安裝,只需一些時間,它就會下載許多的檔案,所及你要確保你的網路環境良好:
sudo add-apt-repository ppa:webupd8team/javasudo apt-get updatesudo apt-get install oracle-java8-installersudo apt-get install oracle-java8-set-default
如果你想安裝Java 7(i.e Java 1.7),在上面的命令中用java7代替java8。
(2)下載壓縮包安裝
1.下載jdk
http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html
即可下載最新版本的jdk。
2.先解壓
sudo tar zxvf ./jdk-8u72-linux-x64.tar.gz
然後利用mv移到自己想要到達的目錄,比如:
mv jdk1.8.0_72 ***(目標位置)
3.設定環境變數
編輯 .bashrc 檔案。
在終端輸入如下命令:
vim ~/.bashrc
在該檔案的末尾,加上以上幾行代碼:
export JAVA_HOME=×××(jdk安裝的目錄)export CLASSPATH=${JAVA_HOME}/libexport PATH=${JAVA_HOME}/bin:$PATH
為了讓更改立即生效,請在終端執行如下命令:
source ~/.bashrc
查看本機上是否還有java可選。這裡用到以下命令
sudo update-alternatives --list java
由於Ubuntu中可能還會有其他的jdk,如openjdk,所以,為了使預設使用的是我們安裝的jdk,還要進行如下工作,使用update-alternatives調整系統預設的java環境。
首先使用update-alternatives --config java,可以看到當前可使用的jdk版本。
update-alternatives --config java There is only one alternative in link group java (providing /usr/bin/java): /home/piaocoder/Java/jdk1.8.0_66/binNothing to configure.
然後,可以使用如下以下命令配置jdk1.8.0_72,實際上就是把jdk1.8.0_72的軟連結替代jdk1.8.0_66的,當然update-alternatives會
記錄有哪些候選命令。
sudo update-alternatives --install /usr/bin/java java /home/piaocoder/Java/jdk1.8.0_72/bin 2000
這樣之後,就ok了:
sudo update-alternatives --config javaThere are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status------------------------------------------------------------* 0 /home/piaocoder/Java/jdk1.8.0_72/bin 2000 auto mode 1 /home/piaocoder/Java/jdk1.8.0_66/bin 1888 manual mode 2 /home/piaocoder/Java/jdk1.8.0_72/bin 2000 manual mode
現在,/usr/bin/java 已經指向我們的jdk1.8.0_72了。
如果我們想要將剛才加進來的jdk環境移除,執行如下代碼即可:
sudo update-alternatives --remove java /home/piaocoder/Java/jdk1.8.0_72/binupdate-alternatives: using /home/piaocoder/Java/jdk1.8.0_66/bin to provide /usr/bin/java (java) in auto mode
ll /usr/bin/java lrwxrwxrwx 1 root root 22 7月 2 12:02 /usr/bin/java -> /etc/alternatives/java/ ll /etc/alternatives/java lrwxrwxrwx 1 root root 36 7月 22 17:45 /etc/alternatives/java -> /home/piaocoder/Java/jdk1.8.0_66/bin/
----------------------------------------------------------------------------------------------------------------------
另外,/etc/profile中path的設定,可以選擇覆蓋或不覆蓋/usr/bin/java命令。
如果我這樣設定profile,那麼會使用jdk1.8.0_66:
#set java environmentexport JAVA_HOME=/home/piaocoder/Java/jdk1.8.0_66export CLASSPATH=${JAVA_HOME}/libexport PATH=${JAVA_HOME}/bin:$PATH
如果我這樣設定profile,那麼會使用/usr/bin/java - > /etc/alternatives/java :
#set java environmentexport JAVA_HOME=/home/piaocoder/Java/jdk1.8.0_66export CLASSPATH=${JAVA_HOME}/libexport PATH=${JAVA_HOME}/bin