[Windows/CMD]不重启设置/刷新环境变量

2023-05-25,,

1 文由

当我已经通过如下路径设置了Maven的环境(maven-3.5.4)。

"我的电脑"->"属性"->"高级"->"环境变量"->"系统变量"
MAVEN_HOME: D:\Program Files(x86)\Maven\apache-maven-3.5.4 [新建 系统变量MAVEN_HOME]
Path: %MAVEN_HOME%\bin [新增 系统变量Path的配置项]

但是,过了一段时间后,由于实际情况需要更换版本为(maven-3.6.3)。此时,需要更换MAVEN版本,并更新MAVEN的环境变量。

我按照上述过程更新了MAVEN_HOME的值:

 MAVEN_HOME: D:\Program Files(x86)\Maven\apache-maven-3.6.3

此时,查看Maven版本:(为什么依旧是3.5.4?!?!?!?这就是写本文的由头了!!!)

E:\Projects\SpringBootSample>mvn -v
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
Maven home: D:\Program Files(x86)\Maven\apache-maven-3.5.4\bin\..
Java version: 1.8.0_111, vendor: Oracle Corporation, runtime: D:\Program Files(x86)\Java\jdk1.8.0_111\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

查看环境变量Path (依旧是3.5.4!!!)

echo %Path%

即 环境变量没有及时刷新/更新成功,导致使用了之前设置的旧的环境变量值

2 刷新环境变量的解决方法

方法2: 重启电脑刷新(永久性更新)

方法1: 命令行刷新(临时性更新)

此法,不用担心DOS窗口中的修改会影响环境变量的值,DOS窗口中的环境变量只是Windows环境变量的一个副本而已。
但是对副本的修改却会引发Windows环境变量的刷新,这正是咱们想要的!

step1 拷贝原系统环境变量(MAVEN_HOME/Path)的所有值

echo %MAVEN_HOME%

echo %Path%
(拷贝输出的所有内容)

step2 查找/更换: 在Path的拷贝内容中找到并更换Maven的部分
step3 命令行执行

set MAVEN_HOME=D:\Program Files(x86)\Maven\apache-maven-3.6.3

set Path=D:\Program Files(x86)\NetSaRang\Xftp 6\;D:\Program Files(x86)\NetSaRang\Xshell 6\;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NGX;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;D:\Program Files(x86)\Java\jdk1.8.0_111\\bin;D:\Program Files(x86)\Java\jdk1.8.0_111\\jre\bin;D:\Program Files(x86)\Maven\apache-maven-3.6.3-self\bin;D:\Program Files(x86)\Python\3.8.5;D:\Program Files(x86)\Apache Tomcat\apache-tomcat-8.5.33\lib;D:\Program Files(x86)\Apache Tomcat\apache-tomcat-8.5.33\bin;D:\Program Files(x86)\Wechat;D:\Program Files(x86)\WXWechat\WXWork;D:\Program Files(x86)\Foxmail;D:\Program Files(x86)\QQ\Bin;D:\Program Files(x86)\HBuilderX\HBuilderX;D:\Program Files(x86)\Snipaste;D:\Program Files(x86)\Git\Git\cmd;D:\Program Files(x86)\TortoiseSVN\bin;C:\Users\Johnny\AppData\Local\Microsoft\WindowsApps;;D:\Program Files(x86)\Microsoft VS Code\Microsoft VS Code\bin

3 git-bash与Windows Shell

Window端的Git-Bash在修改完环境变量,甚至重启电脑,依旧很难及时同步最新的环境变量。

1 这导致,git-bash中的maven版本很可能与Window Shell(CMD)的版本不一致的BUG现象。
2 临时解决Git-Bash的方法:
+ 重新打开 Git-Bash
+ Git-Bash中 set/export Path/MAVEN_HOME

4 参考文献

Win7刷新环境变量 - 博客园
Windows环境下git bash 如何实时加载环境变量? - Zhihu

[Windows/CMD]不重启设置/刷新环境变量的相关教程结束。

《[Windows/CMD]不重启设置/刷新环境变量.doc》

下载本文的Word格式文档,以方便收藏与打印。