批處理設置系統環境變量(JDK)

在軟件運行過程中,可能需要配置計算機的環境變量,在這裏分爲兩種情況:

一:增加或修改環境變量只在當前軟件環境中使用

如我們設置Java的環境變量:

set CLASSPATH=%CLASSPATH%;C:\LS\JAVA.JAR
保持原有的不變  自己加上要加的jar包,用分號隔開,當然你也可以寫到前面,如:set CLASSPATH=D:/My_Path;%CLASSPATH%
set JAVA_HOME=  這裏的路徑自己寫吧
不過這樣寫只對你打開的這個dos窗口有效,也就是你只有在這個窗口用java等命令,纔會找到你才設的變量JAVA_HOME等
如果想看看是否設置成功可以用:echo %JAVA_HOME%

常用此方法配置當前軟件的運行環境,如在PL/SQL的啓動時,使用批處理(bat)來啓動他並配置Oracle的變量信息,網上這種代碼很多就不貼出來了,需要的自己去搜索。

二:通關註冊表永久性的保存設置或增加的環境變量

以下是我從網上找的代碼,很簡單,如果你看不懂的,再給我留言吧:

實例一:批處理設置系統環境變量

複製代碼
::添加環境變量JAVA_HOME
@echo off
echo 添加java環境變量
set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
set evname=JAVA_HOME
set javapath=**::詳細的jdk安裝根目錄目錄路徑,例如:“”
reg add "%regpath%" /v %evname% /d %javapath% /f
pause>nul
 
 
::刪除環境變量JAVA_HOME
@echo off
echo 刪除java環境變量
set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
set evname=JAVA_HOME
reg delete "%regpath%" /v "%evname%"  /f
pause>nul
複製代碼

實例二:先判斷該環境變量是否已經存在,如果不存在則添加該環境變量。

複製代碼
@echo off
    @set Path_=D:\Program Files
    for,/f,"skip=4 tokens=1,2,*",%%a,in,('reg query "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment" /v Path'),do,( 
    @set PathAll_=%%c
    )
    echo %PathAll_%|find /i "%Path_%" && set IsNull=true|| set IsNull=false
    if not %IsNull%==true (
          reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /d "%PathAll_%;%Path_%" /f
    )
pause
複製代碼

對於實例一和實例二是從簡單到複雜的過程,主要是怕有些人對代碼的理解程度不同。


實際腳本:

@echo off
echo. 運行本文件前請將本放置在與JDK裏面和bin文件夾在同一個目錄
pause
@set path=%path%;%systemroot%;%systemroot%\system32;
@reg add "HKLM\system\controlset001\control\session manager\environment" /v JAVA_HOME /t reg_sz /d "%cd%" /f
@reg add "HKLM\system\controlset001\control\session manager\environment" /v PATH /t reg_expand_sz /d ".;%%JAVA_HOME%%\bin;%path%" /f
@reg add "HKLM\system\controlset001\control\session manager\environment" /v CLASSPATH /t reg_sz /d "%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar;." /f
pause 



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章