集成開發環境(好比Eclipse)給開發者太多的便利了,以致於初學者都不知道程序是如何從源碼生成可執行文件的。對於環境變量的認識也是如此,只知道要在一臺新電腦上開發java,安裝JDK後的第一步是配置環境變量。至於爲什麼要配置,或許並不是有個肯定的認識。懷着大概就是那個意思的糊塗心態,就過去了。java
首先是環境變量。引用百度百科的定義:tomcat
環境變量,是在操做系統中一個具備特定名字的對象,它包含了一個或者多個應用程序所將使用到的信息。例如Windows和DOS操做系統中的path環境變量,當要求系統運行一個程序而沒有告訴它程序所在的完整路徑時,系統除了在當前目錄下面尋找此程序外,還應到path中指定的路徑去找。用戶經過設置環境變量,來更好的運行進程。oracle
視窗操做讓咱們對這個概念認識的不清,能夠這樣認爲,視窗操做封裝了命令,與命令行同樣都是給操做系統一個指令。所以當你在某個目錄下,執行javac命令時候,他首先是要從當前目錄找javac的執行文件,或許是個javac.jar或者是個javac.exe。若是找不到,則去操做系統設置的環境變量中去找,再找不到,就說沒有這個指令。環境變量就是幹這個活的。明白了環境變量這個概念後面的內容就好理解了。工具
其次是JAVA_HOME。就是指java安裝目錄。這算是一個規定了,之後無論是oracle、tomcat或者其餘須要用jdk、jrm的軟件,都是直接去找操做系統中這個環境變量。或許你就是最早使用到這個環境變量的,好比你設置path的時候是「;%JAVA_HOME%\bin」,來代替「C:\Program Files (x86)\Java\bin」。「%JAVA_HOME%」就是使用了JAVA_HOME環境變量。操作系統
第三是PATH環境變量。做用是指定java命令搜索路徑。咱們須要把 jdk安裝目錄下的bin目錄增長到現有的PATH變量中,bin目錄中包含常常要用到的可執行文件如javac、java、javaw等,設置好 PATH變量後,就能夠在任何目錄下執行javac/java等工具了。若是不進行設置,那你就只能先進入到這個目錄下,才能使用那些命令了(固然也非何嘗不可)。命令行
最後是CLASSPATH環境變量。他告訴Java執行環境,在哪些目錄下能夠找到您所要執行的Java程序所須要的類或者包。通俗的說它的做用與import、package關鍵字有關,咱們寫的java源碼中,固然會包含別人提供的工具類,好比當你寫下improt java.util.*時,編譯器面對import關鍵字時,就須要知道你要引入java.util這個package中的類到底在哪裏。與上面的同樣,若是不告訴,他就默認在當前目錄下,而如何告訴它呢?就是設置CLASSPATH。對象