У меня есть макроопределение с элементом "libs"
<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>
Затем у меня есть другой макроопределение, которое вызывает несколько макроопределений, включая "deploy"-libs».Было бы неплохо, если бы в этом макросе тоже был элемент "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>
Есть ли способ, чтобы элемент был назван одинаково для обеих макросов?