使用 Windows7,有一个路径问题我已经设置了 ENV 变量 ANT_HOME c:\ant 我添加到 PATH:;%ANT_HOME%\bin;
当我做
echo %ANT_HOME%
我得到:C:\ant
——这很好用
但如果我这么做
echo %PATH%
我没有得到翻译的 ANT_HOME,我只得到了如下所示的 %ANT_HOME%
;%ANT_HOME%\bin;
相反,如果我将路径设置为: ;c:\ant\bin;
——一切正常
我究竟做错了什么?
答案1
Windows 没有非常先进的环境变量依赖性解析功能。如果您设置了系统环境变量,则可以在每个用户环境变量中引用它,并且它将被扩展。从每个用户变量引用另一个每个用户变量(或从新的系统变量引用另一个系统变量)没有什么特别之处。试图找出哪些变量依赖于哪些其他变量会很快变得非常复杂。
如果您确实希望每个用户都%PATH%
包含扩展%ANT_HOME%
变量,%ANT_HOME%
则必须是系统环境变量。最简单的解决方案可能是将目录的完整路径(不是变量形式)放入PATH
.
进一步阅读:隐藏变量作者:Raymond Chen。