我找了很多环境变量批处理的教程,都不太满意,因此综合修改了下,拼凑出了这么一个版本。
下面这个是我主要参考的博客,大部分的代码都是来自这里:
/lpy3654321/article/details/9822439
该博客代码中的PATH,CLASSPATH,JAVA_HOME和我常用的配置不太一样,而且发现PATH原本想要在系统变量的基础上添加java_path值,结果却变成:
用户变量Path=Java_path值+系统变量Path值。
如果原本用户变量和系统变量有些不同的话,会导致用户变量被系统变量覆盖,可能存在隐患。
因此针对Path的设置,又参照了以下这篇博客做出调整:
/lioncode/article/details/6037683
使用以下语句修改Path:
wmic ENVIRONMENT where "name='path' and username='<system>'" set VariableValue="%path%;C:\Program Files\Java\jdk1.5.0_07\bin"
并通知系统Path已经更新,使环境变量的改变立即生效
setx path "%path%"
最后:因为不想要每次都编辑批处理文件的jdk目录,参照这篇博客,改为在命令行中输入目录。
/meetrice/archive//09/18/2690553.html
最后修改的bat如下:
@echo offecho ************************************************************ echo * * echo * JDK 系统环境变量设置,请用管理员身份运行 * echo * * echo ************************************************************ echo. :STARTset /p javahome=请输入JDK安装路径:IF EXIST "%javahome%\bin\java.exe" GOTO INSTALL:WARNINGrem 输入目录错误,提示重新输入echo 您所输入的路径不是JDK安装路径echo 请重新输入正确的JDK安装路径pausegoto START:INSTALLrem 如输入正确的 JavaSDK 安装目录,开始设置环境变量echo 输入的路径是:%javahome%rem LPY echo. echo === 准备设置环境变量: JAVA_HOME=%javahome% echo === 注意: 如果JAVA_HOME存在,会被覆盖,此操作不可逆的,请仔细检查确认!! === echo. echo === 准备设置环境变量(后面有个.): CLASSPATH=.;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar; echo === 注意: 如果CLASSPATH存在,会被覆盖,此操作不可逆的,请仔细检查确认!! === echo. echo === 准备设置环境变量: PATH=%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin; echo === 注意: PATH会追加在最前面, echo. set /P EN=请确认后按 回车键 开始设置! echo. echo. echo. echo. echo === 新创建环境变量 JAVA_HOME=%javahome% setx "JAVA_HOME" "%javahome%" -M echo. echo. echo === 新创建环境变量 CLASSPATH=.;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar; setx "CLASSPATH" ".;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar;" -M echo. echo. echo === 新追加环境变量(追加到最前面) PATH=%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin; wmic ENVIRONMENT where "name='path' and username='<system>'" set VariableValue="%%JAVA_HOME%%\bin;%%JAVA_HOME%%\jre\bin;%path%"setx path "%path%"echo. echo. rem LPY /sadwxds/article/details/52984272 echo === 请按任意键退出! pause>nul