
題圖:by pixel2013 From pixabay
JDK與JRE
JDK = JRE + 開發(fā)工具集(例如Javac編譯工具等)
JRE = JVM + JavaSE標(biāo)準(zhǔn)類庫
JDK8的目錄結(jié)構(gòu)

JDK8目錄結(jié)構(gòu)
- bin:包含命令行開發(fā)和調(diào)試工具,如javac,jar和javadoc
- include:包含在編譯本地代碼時(shí)使用的 C/C++頭文件
- lib:包含 JDK 工具的幾個(gè)JAR和其他類型的文件。 它有一個(gè)tools.jar文件,其中包含javac編譯器的Java類
- jre/bin:包含基本命令,如java命令。 在Windows平臺(tái)上, 它包含系統(tǒng)的運(yùn)行時(shí)動(dòng)態(tài)鏈接庫(DLL)
- jre/lib:包含用戶可編輯的配置文件,如.properties和.policy文件。包含幾個(gè)JAR。 rt.jar文件包含運(yùn)行時(shí)的Java類和資源文件
JDK9的目錄結(jié)構(gòu)

JDK9目錄結(jié)構(gòu)
從上圖可以看出,JDK9中已經(jīng)沒有了JRE
- bin:包含所有命令。 在Windows平臺(tái)上,它繼續(xù)包含系 統(tǒng)的運(yùn)行時(shí)動(dòng)態(tài)鏈接庫
- conf:包含用戶可編輯的配置文件,例如以前位于jre\lib目錄中的.properties 和.policy文件
- include:包含要在以前編譯本地代碼時(shí)使用的C/C++頭文件。 它只存在于 JDK 中
- jmods:包含JMOD格式的平臺(tái)模塊。創(chuàng)建自定義運(yùn)行時(shí)映像時(shí)需要它。它只存在于JDK中