Муравьиный скрипт, обрабатывающий возвращаемое значение из exec
-
21-08-2019 - |
Вопрос
Итак, это сценарий.У меня есть
<target name="test">
<property file="blah"></property>
<exec dir="" executable="trast.exe" resolveexecutable="true" spawn="true">
</exec>
</target>
<!-- So now I have the second target that uses Return value from first target -->
<target name="test2">
<property file="blah"></property>
<exec dir="" executable=RETURN VALUE resolveexecutable="true" spawn="true">
</exec>
</target>
По сути, мне нужен способ использовать результат от первой цели в следующей цели.Я посмотрел онлайн, и, похоже, одно из решений заключается в анализе выходных данных.Но есть ли способ получить его без синтаксического анализа?
Спасибо
Решение
Задача exec имеет outputproperty
.Не могли бы вы сделать что-то подобное:
<target name="test">
<exec dir="" executable="trast.exe" resolveexecutable="true" spawn="true" outputproperty="blah">
</exec>
</target>
<!-- So now I have the second target that uses Return value from first target -->
<target name="test2">
<exec dir="" executable="${blah}" resolveexecutable="true" spawn="true">
</exec>
</target>
Прошло много времени с тех пор, как я использовал Ant, и у меня он не установлен на этом компьютере, но, кажется, я припоминаю, что делал что-то подобное описанному выше.
Или, может быть, использовать resultproperty
?
Нашел это здесь:http://ant.apache.org/manual/Tasks/exec.html
Другие советы
Первый исполняемый файл возвращает имя исполняемого файла, который вам позже придется запустить в test2, верно?
Таким образом, первый исполняемый файл мог бы записать это имя в файл сценария (напримерпакетный файл в Windows, файл оболочки в Unix).Скрипт будет иметь фиксированное имя, и ваш Ant-скрипт просто запустит его.