安裝完JDK之后,需要配置三個(gè)環(huán)境變量,分別為:
JAVA_HOME
Path
Classpath
在“系統(tǒng)屬性”的“高級(jí)”選項(xiàng)卡中,找到“環(huán)境變量”。
在“系統(tǒng)變量”中新建系統(tǒng)變量“JAVA_HOME”,其變量值為“C:\Program Files\Java\jdk1.6.0_03\”。
JAVA_HOME本身只是一個(gè)變量名,%JAVA_HOME%表示對(duì)其值的引用。完全可以用其他的名稱代替。之所以存在這個(gè)變量,是為了引用地址時(shí)更方便些。而且這個(gè)名字也是比較貼切的。對(duì)吧
JAVAHOME就是安裝目錄,用在 PATH,CLASSPATH的設(shè)置中免去了你再寫一長(zhǎng)串的路徑,用JAVAHOME就代替安裝目錄。
舉例:
需要設(shè)定一個(gè)值為:“C:\Program Files\Java\jdk1.6.0_03\bin”。
可以簡(jiǎn)寫為:“%JAVA_HOME%\bin”。
因?yàn)镴AVA_HOME已經(jīng)代表了前面繁瑣的“C:\Program Files\Java\jdk1.6.0_03”。
據(jù)說,在eclipse和tomcat中有些相關(guān)配置名也使用的JAVA_HOME。為了避免不必要的麻煩,所以統(tǒng)一使用JAVA_HOME命名規(guī)則。
第二、Path變量是本身就存在的(首字母大寫,據(jù)說無大小寫區(qū)別)。添加“%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin ”。
Path 使得系統(tǒng)可以在任何路徑下識(shí)別java命令。在設(shè)置之前,在cmd命令行下敲入javac,系統(tǒng)是無法識(shí)別的。因?yàn)閖avac命令的本質(zhì)是javac.exe應(yīng)用程序,其物理位置放在“C:\Program Files\Java\jdk1.6.0_03\bin”。Path設(shè)置好之后,系統(tǒng)就知道到這個(gè)地方來找。
PATH列出了可執(zhí)行文件的搜索路徑。因?yàn)橥ǔRㄟ^命令行的命令啟動(dòng)JAVA,JAVAC等編譯工具和解釋工具,系統(tǒng)必須要知道他們所在的位置,PATH就是用來指明他們的位置的。
關(guān)于Path的理解可以參考在命令行模式運(yùn)行notepad.exe。
如果把notepad.exe文件從system32目錄中移出,同樣在cmd命令行下就無法運(yùn)行我最喜歡的notepad了。
第三、Classpath設(shè)置的是JAVA程序編譯和運(yùn)行時(shí)的類文件搜索路徑。
用法:javac <選項(xiàng)> <源文件>
其中,可能的選項(xiàng)包括:
-classpath <路徑> 指定查找用戶類文件和注釋處理程序的位置
兩個(gè)方面來理解classpath:
第一、可以理解為*.class等源文件所保存的位置。首先明確javac.exe程序是放在在bin目錄下的。用戶運(yùn)行指令:javac HelloWorld.java的過程,實(shí)際上是編譯器首先在當(dāng)前目錄(bin目錄)查找該HelloWorld.java文件,有則運(yùn)行成功,無則跳轉(zhuǎn)至classpath所設(shè)定的目錄去找。
第二、CLASSPATH變量指的是JAVA加載類(class or lib)的路徑。只有在classpath設(shè)置的路徑中的類才能被加載。
設(shè)置方式為:
必須指定\tools.jar。這個(gè)\tools.jar不是目錄,是一個(gè)包。必須指定這個(gè)包才行。
C:\Program Files\Java\jdk1.6.0_03\lib\dt.jar;
C:\Program Files\Java\jdk1.6.0_03\lib\tools.jar;
即:“.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;”。
注意:第一個(gè)點(diǎn)和分號(hào)一定不能少,否則編譯成功后,在執(zhí)行時(shí)會(huì)有找不到文件的錯(cuò)誤,執(zhí)行時(shí)要在編譯好的類文件的目錄下,執(zhí)行java 類名,有包時(shí)是java 包名/類名