2010-06-21 4 views
4

Как это сделать в моем файле сборки? Скажем, я просто хочу, чтобы имя <echo/>?Печать/доступ к имени цели, выполняемой в настоящее время Ant

+0

Да - я сделал macrodef направить муравей цели другому сценарию, и было бы хорошо, чтобы сделать что-то вроде этого: <имя атрибута = «целевой» по умолчанию = "@ enclosing.target.name "/> ... – peterk

ответ

2

Для текущего исполняемого имени цели нет встроенного свойства. Некоторые дебаты on this is here.

Если вы настроили ant с log4j в качестве слушателя, как это, на выходе будут отображаться все цели и конец цели, как показано ниже. Вызов ant build:

D:\apache-ant-1.8.0RC1\bin>ant -lib D:\log4j\log4j\1.2.13 -listener org.apache.tools.ant.listener.Log4jListener build 
Buildfile: D:\apache-ant-1.8.0RC1\bin\build.xml 
11:39:34 INFO Build started. 

build: 
11:39:34 INFO Target "build" started. 
     [echo] 100 
11:39:34 INFO Updating property file: D:\abc.properties 
[propertyfile] Updating property file: D:\abc.properties 
11:39:35 INFO Target "build" finished. 

BUILD SUCCESSFUL 
Total time: 0 seconds 
+0

Спасибо за ссылку на обсуждение, было полезно прочитать, чтобы получить перспективу. К сожалению, я не думаю, что слушатель - это то, что мне нужно. Я предположил, что, поскольку имя проекта и задействованные цели были доступными, текущая цель также была бы такой, и я просто отсутствовал где-то в собственности. –

1

Я думаю, что это answer в значительной степени тот же вопрос более удовлетворительный, с готовым использовать макрос для извлечения значения по мере необходимости.

Смежные вопросы