1.前言
換了臺新筆記本,重新安裝JDK環(huán)境,JDK8已經(jīng)這么長時間了,我打算安裝兩個JDK,那除了必須的JDK8,另一個版本如何選擇呢,查了好多資料,我選擇了JDK17。
之所以選擇JDK17,主要有以下方面原因,先給出一張圖,參考自@吮指原味張:https://blog.csdn.net/mahoon411/article/details/124857836
?首先我們了解一下JDK版本的含義,Oracle把JDK分成了兩種維護情況,即短期支持版本和長期支持版本,對于短期支持版本(non-LTS)而言,Oracle只會提供6個月的支持維護;而對于長期支持版本(LTS),則提供8年的支持維護。所以根據(jù)這一規(guī)劃,Oracle每隔6個月,就會發(fā)布一個大版本,每個季度則發(fā)布一個中間特性版本。另外Oracle還承諾,新的JDK發(fā)布周期會嚴(yán)格遵循時間點,將于每年的3月份和9月份發(fā)布,中間不會跳票。
現(xiàn)在正常情況下,每隔6個月就會有一個短期維護版本(non-LTS)發(fā)布出來,比如JDK 9、10、12、13、14、15、16;然后每隔3年,就會發(fā)布一款得到8年長期支持維護的JDK版本,比如JDK 8、11、17。參考自@千鋒Java學(xué)習(xí)站:https://www.zhihu.com/question/512743150/answer/2978081190
另外還有一個原因,那就是springboot 3要強迫使用Java17了,所以我當(dāng)然選擇長期支持的最新版本JDK17。
2.安裝后目錄結(jié)構(gòu)、環(huán)境變量、注冊表變化
我們先看一下我安裝完JDK8和JDK17兩個版本后的情況,這里對比沒有安裝前主要有以下三方面變動,也是我們安裝和卸載過程中涉及的三個重要步驟。
1.目錄結(jié)構(gòu)
首先我們查看安裝路徑下新增的目錄結(jié)構(gòu)。
?以上分別是JDK1.8安裝目錄、JDK17安裝目錄、以及JRE1.8的目錄。
這是JDK1.8的目錄結(jié)構(gòu):
-
bin
:提供 JDK 工具程序,包括 javac、java、javadoc、appletviewer 等可執(zhí)行程序。 -
include
:存放用于本地訪問的文件。 -
jre
:存放 Java 運行環(huán)境文件。 -
lib
:存放 Java 的類庫文件,工具程序?qū)嶋H上使用的是 Java 類庫。JDK 中的工具程序,大多也由 Java 編寫而成。 -
src.zip
:Java 提供的 API 類的源代碼壓縮文件。如果需要查看 API 的某些功能是如何實現(xiàn)的,可以査看這個文件中的源代碼內(nèi)容
?這是JRE1.8的目錄結(jié)構(gòu),與JDK1.8目錄下jre目錄中目錄結(jié)構(gòu)基本一致,以上是對比。
這是JDK17的目錄結(jié)構(gòu),與JDK1.8目錄結(jié)構(gòu)有所差異,刪除了jre目錄,添加了jmods目錄。
2.環(huán)境變量
???????
??
?
(這里有個小注意點,就是如果將path中新增路徑%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin放到最前邊,就會導(dǎo)致編輯系統(tǒng)變量時無法展開)
這里解釋一下這些環(huán)境變量及其值的含義:
JAVA8_HOME:D:\myDevelopKit\myJava\jdk_1.8.0_361
JDK1.8的安裝目錄
JAVA17_HOME:D:\myDevelopKit\myJava\jdk_17
JDK17的安裝目錄
JAVA_HOME:%JAVA17_HOME%(切換JDK版本為1.8時改為%JAVA8_HOME%)
中間變量用于修改JDK版本
path:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
為了在系統(tǒng)的任意位置都能運行JAVA程序,JAVA程序在bin目錄下
3.注冊表
win+R輸入regedit打開注冊表
?
這是安裝JDK1.8與JDK17后注冊表新增的JavaSoft目錄
3.下邊我們開始卸載JDK1.8與JDK17并重新安裝
1.卸載
?
進入windows應(yīng)用管理,卸載java相關(guān)應(yīng)用
?
卸載完后,JDK1.8目錄與JDK17目錄全都自動刪除了,注冊表中的JavaSoft目錄也自動刪除了。我們需要把JRE1.8目錄手動刪除,同時我們也要手動刪除新增的系統(tǒng)變量。?
2.重新安裝
進入oracle官網(wǎng)登陸自己的oracle賬號并進入下邊鏈接
Java Archive | Oracle 中國https://www.oracle.com/cn/java/technologies/downloads/archive/
?
下載好自己操作系統(tǒng)對應(yīng)的JDK,我下載了JDK8和JDK17的安裝程序
上邊是我下載好的JDK安裝程序 ,先執(zhí)行JDK8的安裝程序,出現(xiàn)下邊彈框,下一步即可
?
?這里我建議安裝到改成自己新建的目錄,接著下一步
這里我還是建議安裝到剛剛新建的jdk1.8同級目錄下,剛剛安裝的是jdk1.8,現(xiàn)在安裝的是jre1.8,其實jdk1.8中是包含jre1.8的,這里我也不清楚為什么還要安裝jre1.8,接著下一步?
?這里已經(jīng)完成了JDK1.8的安裝。我們查看注冊表
這里注冊表中又自動生成了JavaSoft目錄(之前我們應(yīng)用卸載時自動刪除了)
然后我們要手動添加系統(tǒng)變量?
1.新建JAVA8_HOME變量
2.新建JAVA_HOME變量值為%JAVA8_HOME%?
?
3.path變量中新增%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
?
下邊使用java -version測試安裝成功與否
?下邊我們新建Demo.java文件來測試java編譯運行效果
?我們通過javac命令生成.class文件,然后通過java命令運行該程序,在命令行中輸出了結(jié)果。(這里注意必須要到.claa文件的路徑下執(zhí)行java命令,不能執(zhí)行java [.class文件的全路徑名]。)
到這里我們已經(jīng)完成JDK8的安裝與測試,下邊我們安裝JDK17
?
?
?這里已經(jīng)完成了JDK17的安裝。我們查看注冊表
這里注冊表的JavaSoft目錄中又自動生成了JDK目錄
然后我們要手動添加系統(tǒng)變量?
1.新建JAVA17_HOME變量
2.編輯JAVA_HOME變量值為%JAVA17_HOME%?
3.path變量值不變,依然是之前的
下邊使用java -version測試安裝成功與否
文章來源:http://www.zghlxwxcb.cn/news/detail-498582.html
?下邊我們還是運行Demo.java文件來測試java編譯運行效果文章來源地址http://www.zghlxwxcb.cn/news/detail-498582.html
到了這里,關(guān)于2023最新最詳細(xì)JDK解析及安裝和卸載(同時安裝兩個版本)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!