В 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 ответ1

2

В Windows нет очень продвинутого разрешения зависимостей для переменных среды. Если вы установите системную переменную среды, вы можете ссылаться на нее в переменной среды для пользователя, и она будет расширена. Ссылка на другую пользовательскую переменную из пользовательской (или ссылка на другую системную переменную из новой системной) не делает ничего особенного. Попытка выяснить, какие переменные зависят от того, какие другие очень быстро усложняются.

Если вы действительно хотите , чтобы ваш каждого %PATH% включает %ANT_HOME% %ANT_HOME% должна быть системной переменной среды. Возможно, самое простое решение - поместить полный путь (не в переменной форме) вашего каталога в PATH .

Дальнейшее чтение: Скрытые переменные Рэймонда Чена.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .