配置Java环境变量的脚本

2018-08-25  本文已影响0人  大锅烩菜
@echo off

:: TODO:设置java环境变量
:: Author: Gwt
color 02
::设置java的安装路径,可方便切换不同的版本
set input=
set /p "input=请输入java的jdk路径(或回车默认路径为C:\Program Files\Java\jdk1.7.0_80):"
if defined input (echo jdk已设置) else (set input=C:\Program Files\Java\jdk1.7.0_80)
echo jdk路径为%input%
set javaPath=%input%

::如果有的话,先删除JAVA_HOME
wmic ENVIRONMENT where "name='JAVA_HOME'" delete

::如果有的话,先删除ClASS_PATH 
wmic ENVIRONMENT where "name='CLASS_PATH'" delete

::创建JAVA_HOME 。指向的是JDK的安装路径
wmic ENVIRONMENT create name="JAVA_HOME",username="<system>",VariableValue="%javaPath%"

::创建CLASS_PATH 。 搜素class文件的顺序
wmic ENVIRONMENT create name="CLASS_PATH",username="<system>",VariableValue=".;%%JAVA_HOME%%\lib;%%JAVA_HOME%%\lib\tools.jar"

::在环境变量path中,指向jdk的目录。这样在控制台下编译、执行程序时就不需要再键入一大串路径了
call set xx=%Path%;%JAVA_HOME%\jre\bin;%JAVA_HOME%\bin

::echo %xx%

::将返回显的字符重新赋值到path中
wmic ENVIRONMENT where "name='Path' and username='<system>'" set VariableValue="%xx%"

pause

将上面的脚本保存为:JavaAutoBat.bat,双击执行即可。

下面就解释下命令
@echo off 是关闭回显的,不会显示命令信息 on打开会显示命令信息
color 02是设置输出文本颜色的,这里是控制命令台输出绿颜色
set /p "input=请输入命令信息" 是用来接收控制台输入的文本信息的
if else 是用来做判断 if defined input 是用来判断用户是否输入信息,回车的话,则表示未定义input的值
echo "输出信息" 是用来显示信息的
set javaPath=%input% 是用来把变量input的值赋值给javaPath变量的
wmic 是提供了批处理的命令,可以方便的操作环境变量值
删除某一环境变量 就使用 wmic ENVIRONMENT where "name='JAVA_HOME'" delete命令
创建某一环境变量 使用 wmic ENVIRONMENT create name="JAVA_HOME",username="<system>",VariableValue="%javaPath%"命令
修改某一环境变量 使用 wmic ENVIRONMENT where "name='Path' and username='<system>'" set VariableValue="value"
注意事项:
1、在上述批处理脚本命令中,要严格注意空格和大小写等的输入,不然执行不成功的
2、要以管理员方式运行命令,不然提示拒绝执行命令的提示

参考自:https://blog.csdn.net/qq_22498277/article/details/72149038
上面的脚本有个缺点,path环境变量中配置的是jdk的bin的绝对路径,当JAVA_HOME切换到其他jdk时需要重新配置,所以最好用JAVA_HOME变量来表示。修改如下:

@echo off

:: TODO:设置java环境变量
:: Author: Gwt
color 02
::设置java的安装路径,可方便切换不同的版本

set /p "input=请输入java的jdk路径(或回车默认路径为C:\Program Files\Java\jdk1.7.0_80):"
if defined input (echo jdk已设置) else (set input=C:\Program Files\Java\jdk1.7.0_80)
echo jdk路径为%input%
set javaPath=%input%

::如果有的话,先删除JAVA_HOME
wmic ENVIRONMENT where "name='JAVA_HOME'" delete

::如果有的话,先删除ClASS_PATH 
wmic ENVIRONMENT where "name='CLASS_PATH'" delete

::创建JAVA_HOME 。指向的是JDK的安装路径
wmic ENVIRONMENT create name="JAVA_HOME",username="<system>",VariableValue="%javaPath%"

::创建CLASS_PATH 。 搜素class文件的顺序
wmic ENVIRONMENT create name="CLASS_PATH",username="<system>",VariableValue=".;%%JAVA_HOME%%\lib;%%JAVA_HOME%%\lib\tools.jar"

::在环境变量path中,指向jdk的目录。这样在控制台下编译、执行程序时就不需要再键入一大串路径了
wmic ENVIRONMENT where "name='Path' and username='<system>'" set VariableValue="%Path%;%%JAVA_HOME%%\jre\bin;%%JAVA_HOME%%\bin"

pause
上一篇下一篇

猜你喜欢

热点阅读