1.Windows操作系統(tǒng)根據(jù)Path環(huán)境變量來查找命令,Linux操作系統(tǒng)則根據(jù)PATH環(huán)境變量來查找命令
因為Windows操作系統(tǒng)不區(qū)分大小寫,設(shè)置Path和PATH并沒有區(qū)別,而Linux系統(tǒng)是區(qū)分大小寫的設(shè)置Path和PATH是有區(qū)別的,因此我們只需要設(shè)置PATH變量即可
2.CLASSPATH環(huán)境變量定位類:
1. JDK 1.5以上的版本完全可以不用設(shè)置CLASSPATH環(huán)境變量
2. 1.4以前的JDK版本需要在CLASSPATH環(huán)境變量中添加一點(.)用以告訴JRE需要在當前路徑下搜索java類
3. 編譯和運行java程序還需要JDK的lib路徑的dt.jar和tools.jar文件里的java 類,因此還需要把這兩個文件添加到CLASSPATH環(huán)境變量里
因此如果使用JDK1.4以前的版本來編譯和運行java程序,需要設(shè)置CLASSPATH環(huán)境變量的值為:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar(JAVA_HOEM是JDK的安裝路徑)
4. 后來Sun改進了JDK的設(shè)計,JRE會自動搜索當前路徑下的類文件,而且使用java的編譯和運行工具時,統(tǒng)可系以自動加載dt.jar和tools.jar文件中的java類,因此不需要設(shè)置CLASSPATH環(huán)境變量
5. 即使使用JDK1.5以上的版本,也可以設(shè)置CLASSPATH環(huán)境變量,一旦設(shè)置了該變量,JRE將會按環(huán)境變量指定的路徑來搜索java類,這意味著如果CLASSPATH環(huán)境變量中不包括(.)也就是沒有包含當前路徑 ,JRE不會在當前路徑下搜索java類
6. 運行程序時,臨時制指定JRE搜索java類路徑,可以使用-classpath選型
Java –classpath dir1;dir2;dir3….;dirN java類
如果我們在運行java程序時,指定了-calsspath選型的值,JRE嚴格按-calsspath選項里的路徑來搜索java類,既不會在當前路徑搜索java類,CLASSPATH環(huán)境變量所指定的搜索路徑也不再有效。
如果想CLASSPATH環(huán)境變量指定的路徑有效,而且還會在當前路徑搜索java類:
Java –classpath %CLASSPATH% ;.;dir1;dir2;dir3;dirN java類
上面命令通過%CLASSPATH%來引用了CLASSPATH環(huán)境變量的值,并在-calsspath選項路的值里添加了一點,強制JRE在當前路徑搜索java類