"Наследование" переменных пути в Windows

В Windows 7 я добавил две переменные среды пользователя:

M2_HOME   %PROGRAMFILES%Apacheapache-maven-3.0.2
M2        %M2_HOME%bin

В моей голове, оба должны работать, однако, только первый по какой-то причине. Я имею в виду, что я в командной строке могу ввести

cd %M2_HOME%

работает нормально, но

cd %M2%

, который не. Что здесь вообще происходит?

4
задан Svish
08.11.2022 10:42 Количество просмотров материала 3406
Распечатать страницу

1 ответ

там, кажется, ошибка с вложенными переменными среды в Windows 7 (может быть, другие версии тоже, я не уверен), где, если имя переменной верхнего уровня приходит перед именем вложенной переменной в алфавитном порядке, он не будет расширен.

в вашем случае переменная верхнего уровня M2 идет перед вложенной переменной M2_HOME при сортировке по алфавиту. Если вы измените M2 к чему-то, что приходит после M2_HOME (например, M3), вы увидите, что это работает предназначенный.

2
отвечен Herohtar 2022-11-09 18:30

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх