环境variables在Windows 10上太大
我知道这很奇怪,我花了差不多3天的时间在网上search解决scheme,而没有得到一个有用的。 所以我决定来这里
我最近从Windows 8.1升级到Windows 10。
现在我想为我的新安装的Apache Maven设置一个环境variables。
每次我创build用户variables,事情都很好。 但是,我还需要创build系统variables,我需要将bin目录附加到我在用户variables中创build的variables中作为“path”。
现在,每当我这样做,我得到一个说:“这个环境variables太大,因此,我无法创buildpath。
我附上了这个错误的图片。
如果有人能帮我解决这个问题,我会很感激。
预先感谢您的帮助。
当PATHvariables被太多的值超载时,它会到达一个你不能再增加值的地步。 尝试以下应解决您的问题。
解决scheme1:
- 创build一个新的系统variables,说'NEWPATH'
- 将bin目录位置分配给“NEWPATH”
- 现在追加' ; %NEWPATH% '给PATHvariables
如果这仍然不起作用,那么尝试将PATHvariables已经存在的值的一部分复制到“NEWPATH”,然后附加“NEWPATH”
解决scheme2:
如果可以分组和缩短path,请检查PATHvariables的值。 例如,
C:\ Program Files \ Microsoft SQL Server \ 102 \ Tools \ Binn \; C:\ Program Files \ Microsoft SQL Server \ 102 \ DTS \ Bin \;
可以结合起来
C:\ Program Files \ Microsoft SQL Server;
通过这种方式,您可以在固定长度的PATHvariables中创build更多空间,并最终将您的bin目录位置调整为PATH。
希望这可以帮助你!
绕过Environment PATHvariables长度限制的另一个解决scheme或更多解决方法是使用PowerShell脚本pipe理您的path(添加,删除或更新);
1)通过点击“编辑文本”(见上面的截图)捕获当前的PATHvariables,并将其复制到剪贴板并作为备份保存在文本文件中,以避免不必要的意外。 这不是强制性的,但是如果出现问题,可以让你恢复。
2)现在已经备份了,把下面的代码添加到一个新的PowerShell(.ps1)文件中(用下面的第一行来修改你想要添加的文件夹path(+号之后的部分):
$newPath = $env:Path + '; C:\Users\....\FirstFolderToAddToPath; C:\Users\....\SecondFolderToAddToPath;' [Environment]::SetEnvironmentVariable("Path", $newPath, "Machine") $env:Path = $newPath
这是我如何设法得到我的(长)PATHvariables后,玩了Windows 10的用户界面,被长度限制,并失去了我的大部分path。 我希望它有帮助。
除Swapnil的答案之外,请注意,您可以修改历史限制为260个字符的Pathvariables的最大长度。 在Windows 10中,通过将LongPathsEnabled
registry项设置为1来实现此目的,这可以在此处find:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
要访问registry编辑器: Ctrl+R
,请键入Regedit
。
来源: https : //superuser.com/a/1119980/327009
也请看这个超级用户的答案: https : //superuser.com/a/1119980/327009
迟到的答案,但我正在寻找类似的东西,并在这里结束。 我改变了程序文件和程序数据的variables的所有path(这一个保存像1个字符,虽然不重要)。
对于像nodejs这样的东西,我改变了正常的path
C:\ Program Files \ nodejs \
至
的%ProgramFiles%\的NodeJS \
这可以用“C:\ Program Files(x86)\”来完成,也可以使用“%ProgramFiles(x86)%\”
它救了我几个字,但足以让我停下来抱怨我的感觉。
Workarround。 使用编辑文本并在文本编辑器中编辑您的PATH
解决方法:
请重新启动系统。 重新启动系统后,PATH不再为空,但可能会被截断为2047(4095)个字符如果系统重新启动不起作用,请:
启动c:\ windows \ system32 \ regedit.exe转到registryconfiguration单元“HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment”从“path”键清除不必要的目录重新启动系统
注意:在某些特殊情况下,如果系统无法启动,请:
以安全模式login打开命令提示符shell并键入:reg add“HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment”/ v Path / t REG_EXPAND_SZ / d ^%SystemRoot ^%\ system32; ^%SystemRoot ^% /F
有关更多详细信息: https : //software.intel.com/zh-cn/articles/limitation-to-the-length-of-the-system-path-variable