cmd設置環(huán)境變量可以方便我們bat腳本的運行,但是要注意的是變量只在當前的cmd窗口有作用(局部生效),如果想要設置持久的環(huán)境變量需要我們通過兩種手段進行設置:一種是直接修改注冊表,另一種是通過我的電腦-〉屬性-〉高級,來設置系統(tǒng)的環(huán)境變量。
1、查看當前所有可用的環(huán)境變量:輸入 set 即可查看。
![](/d/20211017/060fedb2235a6b8afe1cb208227c9dbd.gif)
2、查看某個環(huán)境變量:輸入 “set 變量名”即可,比如想查看temp變量的值,即輸入 set temp
![](/d/20211017/ca8ada720b90206205aae83f0e76843d.gif)
當然也可以使用echo %temp%
![](/d/20211017/ef7503bde2964288bd1c044fabe4d001.gif)
3、修改環(huán)境變量 :輸入 “set 變量名=變量內容”即可,比如將temp設置為“d:\tempfile”,只要輸入set temp="d:\tempfile"。注意,此修改環(huán)境變量是指用現(xiàn)在的內容去覆蓋以前的內容,并不是追加。比如當我設置了上面的path路徑之后,如果我再重新輸入set temp="c",再次查看temp路徑的時候,其值為“c”,而不是“d:\tempfile”;“c”。
4、設置為空:如果想將某一變量設置為空,輸入“set 變量名=”即可。如“set path=” 那么查看path的時候就為空。注意,上面已經說了,只在當前命令行窗口起作用。因此查看path的時候不要去右擊“我的電腦”——“屬性”........
5、給變量追加內容(不同于3,那個是覆蓋):輸入“set 變量名=%變量名%;變量內容”。如,為temp添加一個新的路徑,輸入“ set path=%path%;d:\tempfile”即可將d:\tempfile添加到path中,再次執(zhí)行"set path=%path%;c:",那么,使用set path語句來查看的時候,將會有:d:\tempfile;c:,而不是像第3步中的只有c:。
環(huán)境變量詳細解釋
1、查看當前可用的所有環(huán)境變量(=系統(tǒng)變量+用戶變量)
set
查看某個環(huán)境變量,如PATH
set PATH
添加環(huán)境變量,如xxx=aa
set xxx=aa
將環(huán)境變量(如xxx)的值置為空
set xxx=
在某個環(huán)境變量(如PATH)后添加新的值(如d:\xxx)
set PATH=%PATH%;d:\xxx
[注]:以命令行方式對環(huán)境變量的操作只對當前窗口的應用有效!
2、Windows下JAVA用到的環(huán)境變量主要有3個:JAVA_HOME、CLASSPATH、PATH。
1)JAVA_HOME指向的是JDK的安裝路徑,如x:\ j2sdk1.4.2,在這路徑下你應該能夠找到bin、lib等目錄。設置方法:JAVA_HOME=c:\ j2sdk1.4.2
2)PATH變量的作用
java程序在運行時首先在path變量所定義的路徑去找java.exe,并以最先找到的為準,如果安裝完j2sdk后不加設置,一般是C:\WINDOWS\system32目錄。
j2sdk1.4(還有其它java開發(fā)工具如jbuilder8)在安裝后會將java.exe拷貝到C:\WINDOWS\system32目錄下,當執(zhí)行java.exe時,需要裝載這個SDK下的一些文件。
如j2sdk1.4在安裝完成后,C:\WINDOWS\system32下的java.exe在運行時會在C:\Program File\java\目錄下裝載必需的一些文件。但安裝j2sdk后一般會在PATH變量的最前面設置C:\ j2sdk1.4.2 \bin。
當先安裝j2sdk1.4.2,后安裝jbuilder8等開發(fā)工具時,由于jbuilder8的java.exe在拷貝到C:\WINDOWS\system32時可能覆蓋了j2sdk1.4.2的java.exe,那么這時在運行的java.exe會到jbuilder8所在的目錄去裝載必需的一些文件。
3)CLASSPATH環(huán)境變量的作用
告訴類裝載器到哪里去尋找第三方提供的類和用戶定義的類。也可用使用JVM命令行參數-classpath分別為應用程序指定類路徑,在-classpath中指定的類路徑覆蓋CLASSPATH環(huán)境變量中指定的值。
3、當機器內裝有多個SDK版本時,如何查看所用的是哪個SDK?
java -verbose
在出現(xiàn)的屏幕信息中可以看出系統(tǒng)裝載的是哪個目錄下的文件。
4、Windows OS下設置PATH的方法
〔系統(tǒng)〕->〔環(huán)境〕-> 〔高級〕,在PATH變量的文本框中的最前面輸入C:\ j2sdk1.4.2\bin
或在命令行窗口中執(zhí)行 set path=c:\j2sdk1.4.2\bin;%path%; 這樣在命令行窗口的任一路徑下都可以執(zhí)行java.exe程序了?;蛟O置PATH=%JAVA_HOME%\bin;%PATH%
5、對于CLASSPATH環(huán)境變量的設置方法要加倍小心,是因為以后你出現(xiàn)的莫名其妙80%以上的怪問題都可能是由于CLASSPATH設置不對引起的。
CLASSPATH=.\;%JAVA_HOME%\lib\tools.jar
首先要注意的是最前面的".\;",——句點反斜杠分號。這個是告訴JDK,搜索CLASS時先查找當前目錄的CLASS文件。
【Troubleshooting】
編譯會出現(xiàn)以下情況,看你是否真得都理解環(huán)境變量的設置,并能解決它。
[T1]error:java不是一個可運行的程序? 由于沒有設置環(huán)境變量path
[T2] error:不能打開某個目錄? 可能是忽視了path環(huán)境變量中的目錄的設置順序。
[T3]Exception on thread “main” java.lang.DoClassDefFoundError:Test? 沒有設置classpath的路徑。
cmd查看環(huán)境變量
1、查看當前所有可用的環(huán)境變量:輸入 set 即可查看。
2、查看某個環(huán)境變量:輸入 “set 變量名”即可,比如想查看path變量的值,即輸入 set path
3、修改環(huán)境變量 :輸入 “set 變量名=變量內容”即可,比如將path設置為“d:\hacker.exe”,只要輸入set path="d:\nmake.exe"。注意,此修改環(huán)境變量是指用現(xiàn)在的內容去覆蓋以前的內容,并不是追加。比如當我設置了上面的path路徑之后,如果我再重新輸入set path="c",再次查看path路徑的時候,其值為“c:”,而不是“d:\nmake.exe”;“c”。
4、設置為空:如果想將某一變量設置為空,輸入“set 變量名=”即可。如“set path=” 那么查看path的時候就為空。注意,上面已經說了,只在當前命令行窗口起作用。因此查看path的時候不要去右擊“我的電腦”——“屬性”........
5、給變量追加內容(不同于3,那個是覆蓋):輸入“set 變量名=%變量名%;變量內容”。如,為path添加一個新的路徑,輸入“ set path=%path%;d:\hacker.exe”即可將d:\hacker.exe添加到path中,再次執(zhí)行"set path=%path%;c:",那么,使用set path語句來查看的時候,將會有:d:\hacker.exe;c:,而不是像第3步中的只有c:。
%ALLUSERSPROFILE% 局部 返回所有“用戶配置文件”的位置。
%APPDATA% 局部 返回默認情況下應用程序存儲數據的位置。
%CD% 局部 返回當前目錄字符串。
%CMDCMDLINE% 局部 返回用來啟動當前的 Cmd.exe 的準確命令行。
%CMDEXTVERSION% 系統(tǒng) 返回當前的“命令處理程序擴展”的版本號。
%COMPUTERNAME% 系統(tǒng) 返回計算機的名稱。
%COMSPEC% 系統(tǒng) 返回命令行解釋器可執(zhí)行程序的準確路徑。
%DATE% 系統(tǒng) 返回當前日期。使用與 date /t 命令相同的格式。由 Cmd.exe 生成。有關 date 命令的詳細信息,請參閱 Date。
%ERRORLEVEL% 系統(tǒng) 返回最近使用過的命令的錯誤代碼。通常用非零值表示錯誤。
%HOMEDRIVE% 系統(tǒng) 返回連接到用戶主目錄的本地工作站驅動器號?;谥髂夸浿档脑O置。用戶主目錄是在“本地用戶和組”中指定的。
%HOMEPATH% 系統(tǒng) 返回用戶主目錄的完整路徑?;谥髂夸浿档脑O置。用戶主目錄是在“本地用戶和組”中指定的。
%HOMESHARE% 系統(tǒng) 返回用戶的共享主目錄的網絡路徑。基于主目錄值的設置。用戶主目錄是在“本地用戶和組”中指定的。
%LOGONSEVER% 局部 返回驗證當前登錄會話的域控制器的名稱。
%NUMBER_OF_PROCESSORS% 系統(tǒng) 指定安裝在計算機上的處理器的數目。
%OS% 系統(tǒng) 返回操作系統(tǒng)的名稱。Windows 2000 將操作系統(tǒng)顯示為 Windows_NT。
%PATH% 系統(tǒng) 指定可執(zhí)行文件的搜索路徑。
%PATHEXT% 系統(tǒng) 返回操作系統(tǒng)認為可執(zhí)行的文件擴展名的列表。
%PROCESSOR_ARCHITECTURE% 系統(tǒng) 返回處理器的芯片體系結構。值: x86,IA64。
%PROCESSOR_IDENTFIER% 系統(tǒng) 返回處理器說明。
%PROCESSOR_LEVEL% 系統(tǒng) 返回計算機上安裝的處理器的型號。
%PROCESSOR_REVISION% 系統(tǒng) 返回處理器修訂號的系統(tǒng)變量。
%PROMPT% 局部 返回當前解釋程序的命令提示符設置。由 Cmd.exe 生成。
%RANDOM% 系統(tǒng) 返回 0 到 32767 之間的任意十進制數字。由 Cmd.exe 生成。
%SYSTEMDRIVE% 系統(tǒng) 返回包含 Windows XP 根目錄(即系統(tǒng)根目錄)的驅動器。
%SYSTEMROOT% 系統(tǒng) 返回 Windows XP 根目錄的位置。
%TEMP% and %TMP% 系統(tǒng)和用戶 返回對當前登錄用戶可用的應用程序所使用的默認臨時目錄。有些應用程序需要 TEMP,而其它應用程序則需要 TMP。
%TIME% 系統(tǒng) 返回當前時間。使用與 time /t 命令相同的格式。由 Cmd.exe 生成。有關 time 命令的詳細信息,請參閱 Time。
%USERDOMAIN% 局部 返回包含用戶帳戶的域的名稱。
%USERNAME% 局部 返回當前登錄的用戶的名稱。
%UserProfile% 局部 返回當前用戶的配置文件的位置。
%WINDIR% 系統(tǒng) 返回操作系統(tǒng)目錄的位置。
您可能感興趣的文章:- 一鍵設置java 環(huán)境變量 cmd下查看、修改(覆蓋與添加)等說明