मैं एक एक तत्व कहा जाता है "libs"चींटी macrodefs और तत्व नामकरण
<macrodef name="deploy-libs">
<element name="libs"/>
<sequential>
<copy todir="${glassfish.home}/glassfish/domains/domain1/lib">
<fileset dir="${lib}">
<libs/>
</fileset>
</copy>
</sequential>
</macrodef>
जो तब के रूप में
<deploy-libs>
<libs>
<include name="mysql-connector-*.jar"/>
<include name="junit-*.jar" />
<!-- .... -->
</libs>
</deploy-libs>
मैं फिर एक और macrodef जो सहित कई macrodefs "कहता है शुरू हो जाती है के साथ एक macrodef है तैनात-libs "। यह अच्छा होगा अगर इस macrodef था एक तत्व "libs" बहुत लेकिन होगा:
<macrodef name="init-glassfish">
<element name="libs"/>
<sequential>
<!-- other stuff -->
<deploy-libs>
<libs>
<libs/>
</libs>
</deploy-libs>
<!-- other stuff -->
</sequential>
</macrodef>
स्पष्ट रूप से (<libs><libs/></libs>
की वजह से) काम नहीं कर रहा है:
Commons/ant-glassfish-server.xml:116: unsupported element include
एक समाधान में तत्व नाम के लिए हो सकता है " init-glassfish "एक अलग तरीके से:
<macrodef name="init-glassfish">
<element name="libraries"/>
<sequential>
<!-- other stuff -->
<deploy-libs>
<libs>
<libraries/>
</libs>
</deploy-libs>
<!-- other stuff -->
</sequential>
</macrodef>
वहाँ तत्व दोनों macrodefs के लिए उसी तरह से नामित किया जाना है के लिए एक रास्ता है?