Ubuntu 安裝JDK 8 & JDK 11


參考文檔:https://www.linuxbabe.com/ubuntu/install-oracle-java-8-openjdk-11-ubuntu-18-04-18-10

主要按照上述文檔翻譯一下主要內容:

Java 11 發布於2018年5月份,這是自從Oracle更改其發布策略以后的第一個長期支持版本。

 

Java的發布模式簡介

之前,Oracle每兩年發布一個java的主版本,每6個月發布一個小版本。但是 Java 9 發布用了3年,因為jigsaw?有些人,比如一些公司,比較喜歡這個模式,因為產品比較穩定。其他人,比如開發者,比較喜歡新東西,感覺這個太慢了。

自 Java 9以后,Oracle每6個月發布一個主版本,每3年會有一個LTS版本(long time support),會持續支持8年,兼顧開發者和企業用戶。Java 11是第一個長期支持版本。下一個長期支持版本是 Java 17。Java 8 到2025年就停止支持了。非LTS版本在下一個版本出來以后就不會再更新了。因此 Java 9 和 Java 10 已經停止更新。

 

OpenJDK vs Oracle JDK

自從Java 9 以后,Oracle 開始提供其自己的OpenJDK。並將一些閉源的特性,比如 Java flight recorder和 Java mission control,推送到了OpenJDK。從 Java 11 開始,Oracle Open JDK 和 Oracle JDK在功能上已經保持一致,相互兼容。兩者主要區別是表面的,包管理?還有授權上。如果你要商業支持,那么請用Oracle JDK,其發布授權協議為OTN(Oracle Technology Network)。

 

安裝Java 8

Java 8 不再使用BCL(Binary Code License),從2019年4月16日起,Oracle JDK 8 使用OTN授權。因此需要注冊Oracle賬號來下載 JDK 8。https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

等下載后,可以將其解壓到/usr/lib/jvm/下面(該路徑默認安裝路徑)。

sudo tar xvf jdk-8u221-linux-x64.tar.gz --directory /usr/lib/jvm/

檢查版本:

/usr/lib/jvm/jdk1.8.0_221/bin/java -version

輸出如下:

java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

 

安裝Java 11

因為Oracle 的OpenJDK 11和其Oracle JDK 11功能相同,因此如果你不需要Oracle 的商業服務支持,強烈建議你使用OpenJDK,因為其包管理集成和更新都比較方便。

使用如下命令即可在Ubuntu 18.04,19.04,20.04上安裝OpenJDK。

sudo apt install openjdk-11-jdk

同時會安裝 openjdk-11-jre 包,其包含了java的運行時包,完了可以用下面的命令檢查版本:

java -version

輸出如下:

openjdk 11.0.4 2019-07-16
OpenJDK Runtime Environment (build 11.0.4+11-post-Ubuntu-1ubuntu219.04)
OpenJDK 64-Bit Server VM (build 11.0.4+11-post-Ubuntu-1ubuntu219.04, mixed mode, sharing)

 

設置默認版本SDK

第一步:將JDK 8 放在選擇系統下面:

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.8.0_221/bin/java 1
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.8.0_221/bin/javac 1

使用如下命令選擇默認JDK版本

sudo update-alternatives --config java
sudo update-alternatives --config javac

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM