1:什么是JDK?
JDK是Java Development Kit 的簡稱,即Java開發工具包。JDK是ORACLE公司針對Java開發者的產品,提供了Java的開發環境和運行環境。
更多信息參看:
http://docs.oracle.com/javase/8/docs/
2:JDK有什么用?
正如我們所看到的,JDK是整個JAVA的核心,它包括了JAVA運行環境、大量的JAVA工具和JAVA基礎類庫。它是JAVA開發的必備工具,是開發JAVA程序的基本環境。現在流行的集成開發環境(IDE)比如:Eclipse/Jbuilder/NetBean等,都是必須基於JDK環境,只不過有些集成環境在安裝的過程中內置了JDK,有些則需要使用者事先獨立的安裝,當然,不論什么Java應用服務器實質也都是內置了某個版本的JDK的。
3:去那里找JDK?
最理想的地方就是去ORACLE官網(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html),當然需要根據自己的機器和操作系統的特點來選擇適合的版本,還有官方網站也是最佳的學習JAVA等技術的場所,需要有良好的英文水平做支持!
我的機器特點如下所示:
3-1:我的電腦的信息
3-2:我的操作系統的信息
3-3:我選擇的JDK的版本
4:如何安裝JDK?
安裝步驟相當簡單,主要是安裝路徑的設置以及安裝成功后關於JDK的一些說明信息需要好好的閱讀一下!
5:JDK的目錄結構?
更多信息請參看:
http://www.oracle.com/technetwork/java/javase/jdk-8-readme-2095712.html
JDK常用工具簡介(存在於\bin目錄下)
工具名 | 簡單功能描述 |
javac.exe | Java編譯器,用於將JAVA源程序轉成字節碼,使.java文件編譯成.class文件 |
java.exe | Java解釋器,運行編譯后的Java程序,即將.class文件解釋成機器碼 |
jar.exe | 打包工具,用於將相關的類文件打包成一個文件 |
javadoc.exe | 文檔生成器,從源代碼注釋中提取文檔 |
jdb.exe | DEBUGGER,查錯工具 |
javah.exe | 建立能被Java程序調用的C過程的頭文件 |
javap.exe | Java反編譯器,顯示編譯類文件中的可訪問功能和數據,同時顯示字節代碼含義 |
jconsole.exe | Java進行系統調試和監控工具 |
6:為什么在JDK安裝路徑下存在兩個JRE?
也許你會問,既然在計算機中至少有兩個JRE,那么有誰來決定使用那一個那?
嗯,我也有這樣的疑問,是這樣的——這個重要的任務是由java.exe來負責的。當使用者在命令行輸入 “java xxx” 命令運行某字節碼文件時,java.exe的任務就會在計算機眾多的JRE中選擇合適的JRE來運行xxx。java.exe將依據以下順序來尋找並使用JRE.
6-1:自己的目錄下有沒有JRE目錄。
6-2:父目錄下有沒有JRE目錄。
6-3:查詢注冊表“HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment ”路徑。
此時我們還沒有配置環境變量,我們驗證一下上面的情況如何!按 WIN+R——>CMD——>java -version
7:JKD安裝時設置JAVA_HOME、PATH、CLASSPATH環境變量有什么作用?
對於JDK6.0及其他版本,在JDK安裝完畢后,為了以后在命令模式下編譯、運行程序方便還是需要進行系統環境變量的配置的,通常有三個環境變量需要配置:JAVA_HOME/CLASSPATH/PATH,如下所示:
新建或編輯 | 環境變量名稱 | 環境變量的值 |
點擊對應的開頭字母,有則編輯,無則新建 | JAVA_HOME | C:\Program Files\Java\jdk1.8.0_40;(對應的JDK安裝目錄) |
CALSSPATH | .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; | |
PATH | %JAVA_HOME%\bin;(為了能夠更快的尋找的到建議,放在此環境變量的最前面) |
測試一下看看,
按 WIN+R——>CMD——>java -version/java/javac,如果出現以下的界面證明環境變量配置正確!
7-1:
7-2:
7-3:
OK,環境變量設置成功,現在我們簡單講一下他們各自的作用是什么。
JAVA_HOME:該環境變量的值就是 Java 所在的目錄,一些 Java 版的軟件和一些 Java 的工具需要用到該變量,設置 PATH 和 CLASSPATH 的時候,也可以使用該變量以方便設置。
PATH: 簡單講設置PATH環境變量的目的就是為操作系統指定尋找工具程序的目錄,用它指定一個路徑列表,用於搜索可執行文件的。執行一個可執行文件時,如果該文件不能在當前路徑下找到,則依次尋找 PATH 中的每一個路徑,直至找到。或者找完 PATH 中的路徑也不能找到,然后再按照別的規則尋找如果所有的都找遍了還是沒找到到,則報錯。
CLASSPATH: 簡單的講設置CLASSPATH環境變量的目的在於通知JAVA執行環境在那些目錄下可以找到所要執行的Java程序(java程序對應的.class文件以及程序中引用的其他.class文件),它也指定了一個路徑列表,是用於搜索 Java 編譯或者運行時需要用到的類。在 CLASSPATH 列表中除了可以包含路徑外,還可以包含 .jar 文件。Java 查找類時會把這個 .jar 文件當作一個目錄來進行查找。通常,我們需要把 JDK 安裝路徑下的 jre/lib/rt.jar (Linux: jre/lib/rt.jar) 包含在 CLASSPATH 中。
注意:
1)PATH 和 CLASSPATH 都指定路徑列表,列表中的各項 (即各個路徑) 之間使用分隔符分隔。在 Windows 下,分隔符是分號 (;),而在 Linux 下,分隔符是冒號 (:)。
2)環境變量不區分大小寫
3)"."表示當前工作目錄
4)設置環境變量后,需要重新打開的命令符模式才能是設置生效
5)如果在執行java/javac命令式遇到“java/javac 不是內部命令或者外部命令,也不是可運行的程序或者批處理文件”錯誤提示,其原因就是PATH環境變量沒有配置或者配置錯誤。
6)JDK在默認情況下會到當前工作目錄下以及JDK的lib目錄下尋找所需的.class文件,因此如果Java程序放在這兩個目錄下,即使不設置classpath變量執行環境也可以找得到,現在這個環境變量設置的少了!