在实际开发中,我们可能经常遇到需要临时切换命令行中Java版本的要求,比如我们系统中配置使用的是JDK17,但开发的程序仍然使用JDK8,此时如果要在命令行中对程序进行编译等操作,由于JDK版本过高可能就会发生问题。我们知道修改系统的环境变量是比较麻烦的,而且还会引出其它软件的兼容性问题,这种情况下比较好的解决方案就是直接覆盖当前CMD(Shell)下的环境变量。
set JAVA_HOME=D:\workspace-common\jdk1.8.0_382
set CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
set PATH=%JAVA_HOME%\bin;%PATH%
注意:
CLASSPATH
环境变量(因为JDK9及以上移除了dt.jar
和tools.jar
)。%JAVA_HOME%\bin
要写在原PATH
的前面,以保证更高的优先级。export JAVA_HOME=/home/jdk1.8.0_382
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
注意点同Windows。