bat脚本临时设置环境变量
改变当前工作目录到脚本所在的目录
cd /d %~dp0
该命令的详细解释:
cd
是 "change directory" 的缩写,用于更改当前工作目录。/d
参数是用于同时更改当前驱动器和当前目录到指定的目录。这个参数在你想要切换到的目录位于与当前驱动器不同的驱动器时特别有用。%~dp0
是一个批处理脚本扩展变量,它会展开成当前批处理脚本文件的完整驱动器路径和目录路径,但不包括文件名。%0
代表脚本本身的名称,~dp
修饰符分别表示 "drive"(驱动器)和 "path"(路径)。
临时设置环境变量
@SET JAVA_HOME=D:\Base\apps\liberica17-jre\current\
@SET Classpath=%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;
@SET Path=%JAVA_HOME%\bin;
@echo %JAVA_HOME%
@java --version
命令的解释和作用:
@
符号用于阻止命令本身在命令行中显示。@SET JAVA_HOME=D:\Base\apps\liberica17-jre\current\
: 这条命令设置JAVA_HOME
环境变量为 Liberica JRE 17 的安装路径。@SET Classpath=%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar;
: 这条命令设置Classpath
环境变量,包含了tools.jar
和dt.jar
这两个 Java 库的路径。这些库通常用于开发工具和设计时支持。%JAVA_HOME%
变量用于引用前面设置的 Java 安装目录。@SET Path=%JAVA_HOME%\bin;
: 通过这条命令,Path 环境变量被更新,包含了 Java 可执行文件的目录。这样一来,你可以在任何命令行窗口中运行 Java 命令,而不需要指定完整路径。@echo %JAVA_HOME%
: 这条命令将显示当前设置的 JAVA_HOME 变量的值。这可以用来验证 JAVA_HOME 是否被正确设置。同样,@ 符号防止了 echo 命令本身被显示。
注意,从 Java 9 开始,tools.jar
和 dt.jar
不再存在于 JDK 中,因为 Java 平台模块化系统的引入。如果使用的是 Liberica JRE 17,这些库可能根本不存在,所以设定 Classpath 可能是不必要的。此外,JRE(Java 运行时环境)通常不包含用于开发的工具,这些工具包含在 JDK(Java 开发工具包)中。所以如果需要这些工具,确保安装的是 JDK 而不是 JRE。