我正在尝试使用环境变量设置一些路径。 我添加了一个环境变量“MAVEN_HOME”,其值为“C:\ maven”。 然后在路径中我添加了“%MAVEN_HOME%\ bin; ... rest”。 当我输入“echo $ MAVEN_HOME%”时,我会在屏幕上打印出正确的“C:\ maven”。 但是当我输入“mvn”这是“bin”目录中的批处理文件时,它找不到它。
所以,我手动在PATH中添加了整个路径。 “C:\行家\ BIN; ...休息” 它能够找到“mvn”并执行它。
有人可以帮助我做错了吗?
答案 0 :(得分:73)
检查上一个路径和下一个路径之间是否有空格字符:
不正确:
c:\path1; c:\Maven\bin\; c:\path2\
正确:
c:\path1;c:\Maven\bin\;c:\path2\
答案 1 :(得分:52)
我有完全相同的问题,要解决它,你可以做两件事之一:
或
如果以上都正确,但问题仍然存在,则需要检查HKEY_CURRENT_USER \ Environment中的系统注册表,以确保“PATH”键类型为REG_EXPAND_SZ(不是REG_SZ)。
答案 2 :(得分:35)
我的问题变得非常简单:
重新启动命令提示符,新变量应该更新
答案 3 :(得分:15)
在路径中的项目之间使用%PATH%或空格会破坏它。请注意。
是的,包含空格的Windows路径会导致错误。例如,应用程序将其添加到系统%PATH%变量定义的前面:
C:\Program Files (x86)\WebEx\Productivity Tools;C:\Sybase\IQ-16_0\Bin64;
导致%PATH%中的所有路径都未在cmd窗口中设置。
我的解决方案是在需要的地方用双引号划分扩展路径变量:
"C:\Program Files (x86)\WebEx\Productivity Tools";C:\Sybase\IQ-16_0\Bin64;
因此忽略空格并正确解析完整路径变量。
答案 4 :(得分:5)
%M2%和%JAVA_HOME%需要添加到USER变量的PATH变量中,而不是SYSTEM变量。
答案 5 :(得分:5)
如果在PATH窗口中有任何错误,将无声地忽略它。像%PATH%或路径中的项之间的空格会破坏它。警告
答案 6 :(得分:4)
另外值得确保您以管理员身份使用命令提示符 - 我的工作机器上的系统锁定意味着在键入时无法找到刚刚报告的mvn标准cmd mvn --version
使用点击'开始>所有节目>配件',右键点击'命令提示符'并选择以管理员身份运行'。
答案 7 :(得分:3)
如果在将用户的PATH变量连接到环境PATH变量后,PATH值太长,Windows将无法连接用户PATH变量。
在安装新软件并向PATH添加内容后,很容易发生这种情况,从而破坏了现有的已安装软件。 Windows失败了!
最好的解决方法是在“控制面板”中编辑其中一个PATH变量,并删除您不需要的条目。然后打开一个新的CMD窗口,看看是否所有条目都显示在" echo%PATH%"。
答案 8 :(得分:1)
我有同样的问题,我通过从用户变量中删除PATHEXT来修复它。它必须只存在于系统变量中,带有.COM; .EXE; .BAT; .CMD; .VBS; .VBE; .JS; .JSE; .WSF; .WSH; .MSC
同时从用户到系统删除变量,仅在用户变量
上包含该路径答案 9 :(得分:1)
为了解决这个问题,我使用了setx命令来尝试设置用户级变量。
我在下面用过......
setx JAVA_HOME "C:\Program Files\Java\jdk1.8.0_92"
setx PATH %JAVA_HOME%\bin
注意:Windows尝试将提供的变量值附加到现有变量值。因此,无需提供额外的%PATH%...类似于%JAVA_HOME%\ bin; %PATH%
答案 10 :(得分:1)
我在Windows 10中遇到了这个问题,在我关闭" explorer.exe"之后它似乎得到了解决。在任务管理器中。
答案 11 :(得分:1)
在Windows 7中。
// not working for me
D:\php\php-7.2.6-nts\php.exe
// works fine
D:\php\php-7.2.6-nts
答案 12 :(得分:0)
将路径值复制到记事本,并检查它是否与终端窗口中的echo%path%对应,并根据需要进行更改。然后删除旧路径值并重新粘贴记事本值。 我假设某些安装在那里输入了一些不可见的字符,损坏了路径值。
答案 13 :(得分:0)
确保正确设置了系统和用户路径。