bat脚本实现jdk安装、环境变量添加及jar包运行
@echo off SET Var0=%0 Set OP= FOR /f "delims=" %%I in ("%Var0%") do Set OP=%%~dpI cd /d %OP% title 安装运行高拍仪对接程序 echo 安装高拍仪驱动程序(注:复制驱动程序到对应目录) xcopy "WSDK_X64" "C:\WSDK_X64\" /S /Y echo. echo **************************************** echo. echo 开始安装对接程序,请不要关闭窗口...... echo. echo 请以管理员身份运行 echo. echo 过程可能需要2至3分钟 echo. echo **************************************** ::设置安装路径 set cd=%~dp0 set jdk_path=C:\Program Files\Java\jdk1.8.0_172 ::判断是否已安装 IF EXIST "%jdk_path%"\bin\java.exe ( echo. echo 发现已安装JDK,即将测试是否可用 echo. goto TEST ) ::安装 start /WAIT jdk-8u172-windows-x64.exe /qn INSTALLDIR="%jdk_path%" if %errorlevel% == 0 ( echo. echo 安装JDK成功,即将配置环境变量 echo. ) goto SETENV ::配置环境变量 :SETENV set regpath=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment rem LPY echo. echo ************************************************************ echo * * echo * JDK 系统环境变量设置 * echo * * echo ************************************************************ echo. echo === 准备设置环境变量: JAVA_HOME=%jdk_path% echo === 注意: 如果JAVA_HOME存在,会被覆盖,此操作不可逆的,请仔细检查确认!! === echo. echo === 准备设置环境变量(后面有个.): classPath=%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;. echo === 注意: 如果classPath存在,会被覆盖,此操作不可逆的,请仔细检查确认!! === echo. echo === 准备设置环境变量: PATH=%%JAVA_HOME%%\bin echo === 注意: PATH会追加在最前面, echo. set /P EN=请确认后按 回车键 开始设置! echo. echo. echo. echo. echo === 新创建环境变量 JAVA_HOME=%jdk_path% setx "JAVA_HOME" "%jdk_path%" -M echo. echo. echo === 新创建环境变量 classPath=%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%%\lib\dt.jar;. setx "classPath" "%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%%\lib\dt.jar;." -m echo. echo. echo === 新追加环境变量(追加到最前面) PATH=%%JAVA_HOME%%\bin for /f "tokens=1,* delims=:" %%a in ('reg QUERY "%regpath%" /v "path"') do ( set "L=%%a" set "P=%%b" ) set "Y=%L:~-1%:%P%" setx path "%%JAVA_HOME%%\bin;%Y%" -m echo. echo. ::测试是否安装成功 :TEST echo. echo 以下提示信息说明JDK安装成功 echo. echo ======================================== echo java version "1.8.0_131" echo Java(TM) SE Runtime Environment (build 1.8.0_131-b11) echo Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode) echo ======================================== echo. ::call "%jdk_path%"\bin\java.exe -version TIMEOUT /T 10 start javaw -jar DockFacility-1.0-SNAPSHOT.jar > C:\log.txt & goto END :END pause