Ответ 1
Весь объект Properties, возвращаемый System.getProperties()
, отображается Ant. Попробуйте следующее:
<echo>${user.dir}</echo>
Можно ли указать, в какой директории пользователь выполнил Ant с?
Например, я могу захотеть запускать только модульные тесты в текущем рабочем каталоге, а не все тесты для всего проекта.
Я пробовал это:
<property environment="env" />
<echo>${env.CWD}</echo>
но это не работает.
Весь объект Properties, возвращаемый System.getProperties()
, отображается Ant. Попробуйте следующее:
<echo>${user.dir}</echo>
${basedir}
также может быть полезным.
В Netbeans под Linux ${user.dir}
кажется всегда равным ${user.home}
, но ${basedir}
дает мне фактическую директорию, из которой выполняется ant (поэтому он дает мне проект dir).
Если вы не используете Windows, это даст вам текущий рабочий каталог:
<exec executable="sh" outputproperty="my.cwd"><arg line="-c pwd"/></exec>
и под окнами
<exec executable="cmd" outputproperty="my.cwd"><arg line="/C echo %cd%"/></exec>
см. также Использование ant для обнаружения os и установки свойства