在 Ubuntu Linux 中安裝 Java 17 LTS
Oracle 宣布發(fā)布 Java 17 作為新的長(zhǎng)期支持 (LTS) 版本。
Java 17 LTS 附帶了數(shù)以千計(jì)的性能、穩(wěn)定性和安全更新,以及 14 個(gè) JEP(JDK 增強(qiáng)建議)。Oracle 將為該版本提供8 年支持,包括安全性、性能和錯(cuò)誤修復(fù)更新,直到 2029 年。
根據(jù)發(fā)布說明,下一個(gè) LTS 將是計(jì)劃于 2023 年 9 月發(fā)布的 Java 21,這將每三年的 LTS 發(fā)布周期改為兩年。
Oracle Java 17 的新增功能:
JDK 17 包括新的語言增強(qiáng)、庫更新、對(duì)新 Apple 計(jì)算機(jī)的支持、舊功能的刪除和棄用,以及確保今天編寫的 Java 代碼在未來的 JDK 版本中繼續(xù)工作而不會(huì)發(fā)生變化的工作。它還提供語言功能預(yù)覽和孵化 API,以收集來自 Java 社區(qū)的反饋。
版本中的更新包括:
- 密封類和接口限制哪些其他類或接口可以擴(kuò)展或?qū)崿F(xiàn)它們。
- 恢復(fù)始終嚴(yán)格的浮點(diǎn)語義
- 偽隨機(jī)數(shù)生成器 (PRNG) 的新接口類型和實(shí)現(xiàn),包括可跳轉(zhuǎn) PRNG 和額外的一類可拆分 PRNG 算法 (LXM)。
- 使用 Apple Metal API 為 macOS 實(shí)現(xiàn) Java 2D 管道。
- 新的基于 Arm 64 的 Apple Silicon 計(jì)算機(jī)支持。
- 棄用 Applet API 以進(jìn)行刪除
- 刪除遠(yuǎn)程方法調(diào)用 (RMI) 激活機(jī)制
- 刪除實(shí)驗(yàn)性 AOT 和 JIT 編譯器
- 棄用安全管理器以進(jìn)行刪除
- 強(qiáng)封裝JDK的所有內(nèi)部元素,除了sun.misc.Unsafe等關(guān)鍵的內(nèi)部API。
- switch 表達(dá)式和語句的模式匹配,以及對(duì)模式語言的擴(kuò)展。
- 改進(jìn)了外部函數(shù)和內(nèi)存 API 以及矢量 API。
如何在 Ubuntu 中安裝 Oracle Java 17:
感謝“Linux Uprising” team ppa,創(chuàng)建了一個(gè)安裝程序腳本來自動(dòng)下載和安裝 Oracle JDK 17 包,并將 Java 17 設(shè)置為 64 位 PC 和 arm64 設(shè)備上的默認(rèn) Java 版本(設(shè)置 JAVA_HOME 等)例如,Rasperry Pi 和 Microsoft HoloLens 2。
1、首先,從系統(tǒng)開始菜單或按鍵盤上的 Ctrl+Alt+T 打開終端。當(dāng)它打開時(shí),運(yùn)行命令添加 PPA:
- linuxmi@linuxmi:~/www.linuxmi.com$ sudo add-apt-repository ppa:linuxuprising/java
在詢問時(shí)輸入用戶密碼(無星號(hào)反饋),然后按 Enter 繼續(xù)。
2、刷新系統(tǒng)包緩存。PPA 為 Ubuntu 18.04、Ubuntu 20.04、Ubuntu 21.04、Ubuntu 21.10 以及兩個(gè)舊的 Ubuntu LTS(14.04 和 16.04)提供了軟件包。舊的 Ubuntu 版本需要通過在終端中運(yùn)行以下命令來手動(dòng)更新系統(tǒng)緩存:
- linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt update
3、最后通過命令安裝腳本包:
- linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt update
腳本啟動(dòng)后,它會(huì)將您帶到接受許可條款。按鍵盤上的 Tab 鍵選擇 確定 并按 Enter。
然后通過箭頭鍵回答“是”并按 Enter 開始從 Oracle 網(wǎng)站下載 Java 17 包。
終端將為您指示下載和安裝過程。當(dāng)一切都成功完成后,使用 java --version 或 javac --version 命令來驗(yàn)證安裝。
- linuxmi@linuxmi:~/www.linuxmi.com$ java --version
- java 17 2021-09-14 LTS
- Java(TM) SE Runtime Environment (build 17+35-LTS-2724)
- Java HotSpot(TM) 64-Bit Server VM (build 17+35-LTS-2724, mixed mode, sharing)
- linuxmi@linuxmi:~/www.linuxmi.com$ javac --version
- javac 17
就這樣。




























