En Windows 7 he agregado dos variables de entorno de usuario:
M2_HOME %PROGRAMFILES%\Apache\apache-maven-3.0.2
M2 %M2_HOME%\bin
En mi cabeza, ambos deberían funcionar, sin embargo, solo el primero lo hace por alguna razón. Lo que quiero decir es que en un símbolo del sistema puedo escribir
cd %M2_HOME%
Lo que funciona bien, pero
cd %M2%
Lo cual no. ¿Que está pasando aqui?
Respuestas:
Parece que hay un error con las variables de entorno anidadas en Windows 7 (tal vez otras versiones también, no estoy seguro) donde si el nombre de la variable de nivel superior viene antes del nombre de la variable anidada alfabéticamente, no se expandirá .
En su caso, la variable de nivel superior
M2
aparece antes de la variable anidadaM2_HOME
cuando se ordena alfabéticamente. Si cambiaM2
a algo que viene despuésM2_HOME
(por ejemplo,M3
), verá que funciona según lo previsto.fuente
M2
a algo comoM3
o incluso algo asíM2_PATH
funcionaría, siempre que sea algo que viene despuésM2_HOME
en comparación alfabéticamente. Alternativamente, puede editarM2_HOME
e ingresar manualmente el directorio de archivos de programa en lugar de usarlo%PROGRAMFILES%
, ya que el error solo parece ocurrir cuando tiene anidamiento de más de dos niveles.