时间:2018-09-17
姓名:魏文应
一、系统环境变量的作用
系统环境变量,是让系统去找到可执行程序,比如我们的电脑版微信:
当我们点击图标时,图标会关联到 WeChat.exe
这个可执行程序。当没有图标记录 WeChat.exe
这个可执行程序在哪时,怎么办呢?比如在 CMD 命令行终端执行 WeChat
命令打开微信,CMD 命令行终端就找不到 WeChat.exe
。我们系统环境变量,就是告诉操作系统,让操作系统去哪些文件目录下查找可执行程序。
二、设置系统环境变量
在哪里设置
在桌面上,右键 计算机,选择 属性。然后依次点击 高级系统设置 -> 环境变量 ,这就可以看环境变量了:
相关含义
上图中,上面部分是 用户环境变量,下面部分是 系统环境变量 。它们的区别在于:
用户环境变量: 只对当前用户有效,如果使用其他用户账号登录系统,这些变量就没有了,有的则是另外一个用户自己设定的环境变量。
系统环境变量: 对所有用户都有效。
你还会发现,这里有很多变量。主要可以分为两类:
-
一般变量: 一般变量,有一些用途,比如编程时,有些脚本使用
%JAVA_HOME%\bin\
,而JAVA_HOME=C:\Program Files\Java\jdk1.8.0_172
那么:%JAVA_HOME%\bin\ 就相当于 C:\Program Files\Java\jdk1.8.0_172\bin\
-
PATH变量: PATH 变量,是系统用来寻找程序的路径的,也就是找到系统中那些
.exe
结尾的文件。操作系统只在 PATH 指定的路径下找。PATH 可以有多个路径,使用英文分号;
隔开,中间不可有空格(文件名有空格是可以的):变量名:PATH 变量值:C:\Program Files (x86)\Tencent\QQ;C:\Program Files (x86)\Tencent\WeChat;
上面这里,就是把 QQ 和微信的路径包含到了环境变量中。
你可能有疑问,平时直接点击微信和QQ图标就可以启动了,它也没有加到系统环境变量中啊!你是因为你点击的那个图标,包含了微信或者 QQ 的位置信息,它能帮你找的。但在命令行中,没有图标,你输入 QQ
两个字母,系统并不认识啊,你需要告诉系统,在哪些文件夹内查找,就能够找到 QQ 了。
高级设置
事实上,你会发现,如果很多程序需要加到系统环境变量中,那么 PATH 的值就会很长,不易阅读和修改,怎么办呢?我们可以这样(以 Java 程序为例)
-
定义一个普通变量: 点击新建,写入相应变量名和变量值
变量名:JAVA_BIN 变量值:C:\Program Files\Java\jdk1.8.0_172\bin\
-
加入 PATH 变量内: 将上面定义的普通变量加入 PATH 变量内
变量名:PATH 变量值:C:\Program Files (x86)\Tencent\QQ\;C:\Program Files (x86)\Tencent\WeChat\;%JAVA_BIN%;
上面这个效果就相当于:
变量名:PATH 变量值:C:\Program Files (x86)\Tencent\QQ;C:\Program Files (x86)\Tencent\WeChat;C:\Program Files\Java\jdk1.8.0_172\bin\;
上面设置中,如果我们对其它变量都有一个设置(变量名不能重复):
变量名:QQ_HOME
变量值:C:\Program Files (x86)\Tencent\QQ\
变量名:WECHAT_HOME
变量值:C:\Program Files (x86)\Tencent\WeChat\
那么 PATH 就变得简洁多了:
变量名:PATH
变量值:%QQ_HOME%;%WECHAT_HOME%;%JAVA_BIN%;
需要注意,变量名不能和系统的其它变量重复了。此外,添加环境变量时,不能把其它的删除掉,除非你知道这个路径已经不用了。
三、常见问题
设置无效
有时你明明设置了环境变量,但就是不起作用,比如,在 CMD 命令行终端输入下面命令:
java -V
没有反应,但是你明明将 JAVA 的路径添加到了 PATH 中,这时:
你只需重启 CMD 命令行终端,让系统环境变量重新加载就可以了 。
同时:
仔细检查你的路径,以及分号是否是英文的
;
。路径之间不要加空格。