加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

windows – %M2%在系统变量Path中不起作用但在用户变量Path中

发布时间:2020-12-13 20:33:00 所属栏目:Windows 来源:网络整理
导读:我正在安装Maven,需要设置M2和M2_Home.我在环境变量的用户变量中设置了它们.我在环境变量的系统变量中添加了%M2%到Path变量.我期待能够运行mvn –version,但我不能.但是,如果我这样做 echo%Path%我可以看到路径中有%M2%,如果我回显%M2%,我可以看到mv
我正在安装Maven,需要设置M2和M2_Home.我在环境变量的用户变量中设置了它们.我在环境变量的系统变量中添加了%M2%到Path变量.我期待能够运行mvn –version,但我不能.但是,如果我这样做
echo%Path%我可以看到路径中有%M2%,如果我回显%M2%,我可以看到mvn所在的bin目录.

所以我有这个问题.直到我在用户变量中创建Path变量并将%M2%添加到该变量(并将其从系统变量中的路径中删除)之前,问题才得到解决.现在它有效.有没有人知道为什么它只是以这种特定的方式工作?

您必须查看Windows源代码以确定发生了什么,但这并不让我感到惊讶.根据我的测试,似乎系统环境变量只能引用其他系统环境变量,而不是用户环境变量.

请注意,echo%PATH%应显示扩展路径.你不应该看到%M2%.

这可能是因为有时需要在没有用户上下文的情况下扩展系统环境变量.如果用户环境变量包含在系统环境变量的扩展中,则需要将其视为特殊情况.这也可能被认为是首选行为,因此用户的环境变量不会意外地影响系统变量的解释,或者存在与进程之间的环境变量继承方式相关的问题.

将%M2%添加到用户路径中,或者将M2设置为系统而不是用户环境变量.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读