Я отвечу на исходный вопрос, не указав другой возможный синтаксис (есть много других ответов), но, указывая на то, с чем мне приходилось иметь дело, потребовалось некоторое время, чтобы выяснить:
What am I doing wrong?
Возможно, что% {HTTP_HOST} не заполняется должным образом или вообще отсутствует. Хотя, я видел только, что это происходит только на одной машине на общем хосте, с некоторым пользовательским исправленным apache 2.2, тем не менее, это возможность.
Очевидно, что c: \ windows \ system32 направляется по другому пути, поскольку Visual Studio является 32-разрядным приложением. Использование специального псевдонима «Sysnative» работает:
<Target Name="Java" BeforeTargets="Build">
<Exec Command="c:\Windows\Sysnative\java.exe"/>
</Target>
Подробнее здесь .