我最近从Windows 8.1升级到Windows 10。
现在我想为Apache Maven的新安装设置一个环境变量。
每次我创建user变量时,事情都很好。然而,我还需要创建系统变量,我需要将bin目录附加到我已经在用户变量中创建的变量为“path”。
现在,每次我这样做,我都会得到一个错误,说“这个环境变量太大了”。因此,我无法创建路径。
我附上了这个错误的图片。
我最近从Windows 8.1升级到Windows 10。
现在我想为Apache Maven的新安装设置一个环境变量。
每次我创建user变量时,事情都很好。然而,我还需要创建系统变量,我需要将bin目录附加到我已经在用户变量中创建的变量为“path”。
现在,每次我这样做,我都会得到一个错误,说“这个环境变量太大了”。因此,我无法创建路径。
我附上了这个错误的图片。
当前回答
我发现你可以通过PowerShell来做到。
[System.Environment]::SetEnvironmentVariable("PATH", "C:\Program Files (x86......etc.....", "Machine")
所以我抓取了现有的系统路径,粘贴到记事本,添加我的新东西,然后粘贴到上面的“C:\Program Files”位。日志含义更新路径。完成了。
其他回答
有几种方法可以清理路径变量。最简单的是使用快速环境编辑器。这个免费的工具,
删除重复路径(右键单击→清除路径) 删除不存在的文件夹(如红色所示,需要手动删除) 将长路径替换为短路径(右键单击→长路径转换为短路径)。
我按顺序执行上述步骤,并仅对最长路径使用第三步,直到再次控制Path变量大小。
如果你想要更高级,这里有一个c#小工具,你可以修改为任何你想要实现的逻辑。
处理:
请重启系统。重新启动系统后,PATH不再为空,但它可能被截断为2047(4095)个字符
如果系统重启不起作用,请:
启动C: \ windows \ system32系统\ regedit.exe。转到注册表蜂巢“HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment”,从“Path”键清除不必要的目录。重新启动系统。
注意:在某些特殊情况下,如果系统无法启动,请:
请以安全方式登录 打开命令提示符shell并输入: f . reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /d SystemRoot^%\system32
详情如下:
限制System PATH变量的长度
我发现你可以通过PowerShell来做到。
[System.Environment]::SetEnvironmentVariable("PATH", "C:\Program Files (x86......etc.....", "Machine")
所以我抓取了现有的系统路径,粘贴到记事本,添加我的新东西,然后粘贴到上面的“C:\Program Files”位。日志含义更新路径。完成了。
我更改了Program Files和programdata的所有变量路径(这一个保存为一个字符,但不那么重要)。
对于Node.js这样的东西,我改变了的正常路径
C:\Program Files\nodejs\
to
%程序文件%\nodejs\
这可以用“C:\Program Files(x86)”来完成,也可以用“%ProgramFiles(x86)%”来完成。
它为我节省了几个角色,但我觉得足够让它停止抱怨了。
我也有同样的问题。最终,我不得不删除一个现有的变量,以使总长度小于2047。
然后我可以将%MAVEN_HOME%\bin添加到路径变量中。