本文最后更新于 2024-05-30,文章内容可能已经过时。

每当更换电脑或者是重装系统之后,都需要重新配置java系统路径。但是又不想每次都去查配置方法,所以写了个脚本自动配置。

脚本内容

:: chcp 65001 代码表示更改为Unicode(utf-8)
chcp 65001
@echo off
@echo 第一步 输入要设置的JAVA_HOME路径:(As example: D:\Program Files\Java\jdk1.8.0_181)
set /p input="请输入JAVA_HOME路径:"
@echo 第二步 设置JAVA_HOME路径
setx JAVA_HOME "%input%" /M
@echo 第三步 设置PATH
setx path "%path%;%%JAVA_HOME%%\bin" /M
@echo 第四步 设置classpath
setx classpath .;%%JAVA_HOME%%\lib\dt.jar;%%JAVA_HOME%%\lib\tools.jar /M
@echo “执行完成”
pause

步骤及意义

  • 关闭回显@echo off
  • 第一步是接收手动输入java安装路径,例:D:\Program Files\Java\jdk1.8.0_181

安装路径

  • 第二步是将输入的值设置给全局属性,并命名为JAVA_HOME

    其中:加/M是代表设置system变量,可使所有用户可用,不加/M则只当前用户可用。

  • 第三步是设置PATH,因为是覆盖更新,所以在之前要加上现有的PATH变量即%path%;

  • 第四步是设置classpath

使用方式

新建一个txt文本文件,然后将上述全部语句粘贴进去,保存后,将文件后缀修改为.bat即可。

右键,使用管理员权限运行。

echo 和@echo的区别

echo: 会在shell中显示echo这条命令和后面要输出的内容

@echo: 不会显示echo这条命令,只会显示后面要输出的内容

例如:

echo “hello” 输出为:echo “hello” hello

@echo “hello” 输出为:hello

在执行命令之前会把要执行的命令进行输出,称之为回显

如果要执行的命令以字符@开始,则不会回显

set和setx的区别

1、SET命令:这种语法只能在Cmd Shell环境中有效,关闭运行环境环境变量将不保存。

2、SETX命令:Window XP 以上的系统都自带了该命令(如果没有,下载一个Setx.exe),这种方式为永久设定环境变量。