java创建环境变量是用户还是系统,用户与系统环境变量:系统变量是否覆盖用户变量?...

Twisty Impersonator在回答中所说的一切都是正确的。附加了用户路径变量的想法已得到强调,我相信这种差异的后果需要进一步处理。

路径=%路径%(系统);%Path%(用户)

当你执行一个可执行程序(或任何可执行脚本,如.bat,.vbs等),则无需提供完全合格的路径。

例如,要运行java,您可以输入以下任意一项:

C:/Program Files (x86)/Java/jre6/bin/java -version

java.exe -version

java -version

第一个示例使用完全限定的路径。这将始终在该确切路径上使用Java版本。

第二个示例将遍历%Path%环境变量中的每个目录,查找名为的可执行文件java.exe。它将运行找到的第一个,并停止搜索。如果在的java.exe某处有两个文件命名%Path%,则仅使用找到的第一个文件。

与第二个示例一样,第三个示例将迭代%Path%。中列出的目录。另外,由于未提供文件扩展名,因此可执行文件扩展名列表将按照%PATHEXT%环境变量中指定的顺序附加到文件名之后。如果有几个文件命名java.com,java.exe,java.bat,等地方上%Path%,只找到了第一个被使用。

您可以通过创建以下批处理文件来查看系统上的可执行路径扩展名列表:

@echo off

echo %PATHEXT%

pause

在我的机器上,这些是:

.COM; .EXE; .BAT; .CMD; .VBS; .VBE; .JS; .JSE; .WSF; .WSH; .MSC;的.py

这是什么意思呢?

在鲜明的对比到其他环境变量,用户路径不允许您覆盖系统路径。情况恰恰相反。在上面的示例中,在许多情况下您可能会更改Java的默认版本。但是,如果系统路径中已经列出了Java版本,则始终会首先找到该版本,因为从左到右依次搜索路径,并且在右侧附加了用户路径。 -左侧,系统路径在左侧。

我该怎么办?

如果您无权访问系统环境变量,则无法使用用户路径覆盖系统路径上的默认程序。(实际上,一定是这种方式,否则某些程序将无法正常运行,这将使您的系统容易受到恶意软件的篡改。没人希望那样。)

相反,如果必须使用特定版本,则必须使用标准路径。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值