Я написал небольшой макрос в отдельном файле:
macrodefs.xml
<macrodef name="do-cool-stuff">
<attribute name="message"/>
<sequential>
<echo message="@{message}" />
</sequential>
</macrodef>
У меня есть второй файл, мой основной файл сборки:
build.xml
<target name="build">
<!-- do this and that -->
<!-- cheking out macrodefs.xml via CVS -->
<ant antfile="macrodefs.xml" target="do-cool-stuff" >
<property name="message" value="Hello, World!" />
</ant>
</target>
Как вы могли догадаться эта доза не работает. Сообщение об ошибке выглядит примерно так:
Target 'do-cool-stuff' does not exist in this project.
Единственное возможное решение, которое я нашел, - это предоставить дополнительную цель в macrodefs.xml для пересылки вызовов муравья.
Есть ли возможность вызвать macrodef из другого файла?
Заранее спасибо.