Подтвердить что ты не робот

Печать Ant целевого времени выполнения

Я хочу напечатать время выполнения для каждой отдельной цели Ant и ее зависимых целей.

<target name="target1" depends="target2, target3"> 
....
</target>

Когда запуск должен показывать следующий вывод

Target 2 - x seconds
Target 3 - y seconds
Target 1 - z seconds

Любые предложения о том, как достичь этого?

4b9b3361

Ответ 1

Так как Ant 1.8.0, вы можете использовать profilelogger, чтобы сделать это.

ant -logger org.apache.tools.ant.listener.ProfileLogger target

Производит вывод, например

Цель aTarget: начало Чт 22 января 09:01:00 CET 2009

echo: начало Чт янв 22 09:01:00 CET 2009      [эхо] эхо-задача

echo: finishedThu 22 января 09:01:00 CET 2009 (250 мс)

zip: начало Чт 22 января 09:01:00 CET 2009       [zip] Создание zip:...\my.zip

zip: finishedThu 22 января 09:01:01 CET 2009 (1313ms)

Цель aTarget: finishedThu Jan 22 09:01:01 CET 2009 (1719 мс)

Ответ 2

Используйте один из слушателей из коллекций задач Ant:

Или проверьте их источники и сканируйте свой собственный слушатель.

Ответ 3

Если вы используете ant -contrib, тогда есть задача секундомера. Поместите ее вверху и внизу каждой цели, и она сообщит об истекшем и общем времени.

http://ant-contrib.sourceforge.net/tasks/tasks/index.html

Ответ 4

Существует задача TStamp, которую вы можете использовать для разметки ваших других задач.

Смотрите здесь: http://ant.apache.org/manual/Tasks/tstamp.html

Существует некоторое расширение/аддон, который сделает все это для вас, не делая этого. Будет царапать для него, если вначале никто не сталкивается с этим.

Ответ 5

Пользовательские регистраторы не сложно записать.