Mogę uzyskać %ProgramFiles%
w Ant z ${env.PROGRAMFILES}
. Ale nie mogę wymyślić, jak uzyskać %ProgramFiles(x86)%
.Jak uzyskać zmienną środowiskową ProgramFiles (x86) w Ant
Odpowiedz
Użyj ${env.ProgramFiles(x86)}
. Zmienna rozróżnia wielkość liter w sposób niezgodny z env.PROGRAMFILES.
[echo] env.ProgramFiles(x86) == C:\Program Files (x86)
[echo] env.PROGRAMFILES(x86) == ${env.PROGRAMFILES(x86)}
[echo] env.ProgramFiles == ${env.ProgramFiles}
[echo] env.PROGRAMFILES == C:\Program Files
Czy próbowałeś już ${env.PROGRAMFILES(x86)}
? (Patrz how to get program files x86 env variable?)
Przepraszam, nie mam maszyny Windows do przetestowania tego.
Jeśli to nie działa sugeruję dodanie następującego zadania nieruchomości w budowie:
<property environment="env"/>
I uruchomić ANT w trybie debugowania, aby zobaczyć wartości set:
ant -d
Dzięki za sugestię, Mark. Ta składnia nie działa; jednak w trakcie błędnego wpisywania go, znalazłem, że $ {env.ProgramFiles (x86)} działa. To dziwne - $ {env.PROGRAMFILES} działa, ale $ {env.ProgramFiles} nie. Tak więc jest tu pewna niekonsekwencja w składni. Dziękuję za zaproszenie do rozwiązania! – Jerry
Dla mnie dwa przypadki zmiennych, które nie są niespójne: są to env.ProgramFiles i env.ProgramFiles (x86). Może coś zmieniło się w nowszej mrówce? Mam mrówkę 1.9.4. – Vlad