天天看點

classpath、path、JAVA_HOME的作用

classpath是什麼?它的作用是什麼?

     它是javac編譯器的一個環境變量。

     它的作用與import、package關鍵字有關。

     當你寫下improt java.util.*時,編譯器面對import 關鍵字時,就知道你要引入java.util這個package中的類;但是編譯器如何知道你把這個package放在哪裡了呢?是以你首先得告訴編譯器 這個package的所在位置;如何告訴它呢?就是設定classpath啦 :) 如果java.util這個package在c:\jdk\ 目錄下,你得把c:\jdk\這個路徑設定到classpath中去!當編譯器面對import java.util.*這個語句時,它先會查找classpath所指定的目錄,并檢視子目錄java\util是否存在,然後找出名稱吻合的已編譯檔案(.class檔案)。如果沒有找到就會報錯!

     classpath有點像c\c++編譯器中的include路徑的設定哦,是不是?當c\c++編譯器遇到include <iostream>這樣的語句,它是如何運作的?哦,其實道理都差不多!搜尋include路徑,檢視檔案!

     當你自己開發一個package時,然後想要用這個package中的類;自然,你也得把這個package所在的目錄設定到classpath中去!

     classpath的設定,對java的初學者而言是一件棘手的事。是以sun讓java2的jdk更聰明一些。你會發現,在你安裝之後,即使完全沒有設定classpath,你仍然能夠編譯基本的java程式,并且加以執行。

.....................................................................................................................................................

1. path環境變量。作用是指定指令搜尋路徑,在指令行下面執行指令如javac編譯java程式時,它會到path變量所指定的路徑中查找看是否能找到相 應的指令程式。我們需要把jdk安裝目錄下的bin目錄增加到現有的path變量中,bin目錄中包含經常要用到的可執行檔案如javac/java /javadoc等待,設定好path變量後,就可以在任何目錄下執行javac/java等工具了。

2. classpath環境變量。作用是指定類搜尋路徑,要使用已經編寫好的類,前提當然是能夠找到它們了,jvm就是通過classpath來尋找類的。我 們需要把jdk安裝目錄下的lib子目錄中的dt.jar和tools.jar設定到classpath中,當然,目前目錄“.”也必須加入到該變量中。

3. java_home環境變量。它指向jdk的安裝目錄,eclipse/netbeans/tomcat等軟體就是通過搜尋java_home變量來找到并使用安裝好的jdk。

在windows桌面上右擊“我的電腦” —> “屬性” —> “進階” —> “環境變量”,在“系統變量”裡我們可以看到系統的各個環境變量的值。輕按兩下某個變量名可以修改變量值,變量值之間用“;”隔開。我們還可以“建立”原先沒 有的變量。與jdk有關的有3個環境變量;“java_home”,“path”,“classpath”。我的系統中“path”變量已經存在,可以直 接添加新值(其它變量值不要動,防止其它程式運作異常),其它兩個變量需要建立。

“java_home”,設定jdk的安裝路徑,比如“e:\java\jdk1.5”,以下簡稱“%java_home%”。

“path”,設定jdk中各個程式的路徑,“%java_home%\bin;%java_home%\jre\bin;”

“classpath”,設定java各個類的路徑,“.;%java_home%\lib;%java_home%\lib\tools.jar”。前面的“.”不可少,它代表了我們為自己的java類建立的工作路徑,其它的是jdk自帶的标準類庫路徑。

最終java環境變量應配置為:

classpath= ".;%java_home%\lib;%java_home%\lib\tools.jar"

java_home = "c:\program files\java\jdk1.5.0"

path ="%java_home%\bin;%java_home%\jre\bin "

設定好環境變量後按“确定”退出。按“win”+“r”鍵進入“運作”視窗,運作“cmd”進入dos視窗,在輸入“javac”後回車,如果有顯示java的幫助資訊,就說明環境變量設定成功。