Я довольно новичок в MSBuild, так что, возможно, я делаю что-то явно неправильное, но мой коллега, который много работал с MSBuild, не видит никакой ошибки, поэтому я решил опубликовать здесь и посмотреть, кто-нибудь еще может это увидеть.
Я конвертирую старый пакетный файл, который мы использовали для вызова ant
, в задачи MSBuild (потому что мы хотим вызывать его из MSBuild), а переменные среды всегда расширяются до )
по причинам, которые мы не понимаем.
У меня есть группа свойств, которая включает
<PropertyGroup>
<EnvJavaHome>
$([System.Environment]::GetEnvironmentVariable("JAVA_HOME"))
</EnvJavaHome>
<!-- ... -->
</PropertyGroup>
(разрывы строк добавлены для удобочитаемости). Теперь ссылка Функции свойств MSBuild предполагает, что я правильно вызываю System.Environment.GetEnvironmentVariable , но всегда получаю значение )
. Однако код работает отлично, когда я жестко кодирую значение.
Какую очевидную вещь мне не хватает? : О)