[Windows/CMD]不重啟設置/刷新環境變量


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 參考文獻


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM