次の ant マクロ定義定義にバグがあります。
<macrodef name="xxx" description="does xxx">
<attribute name="attr1" default=""/>
<sequential>
<echo message="doing yyy"/>
<echo message="@{attr1}" file="${builddir}/zzz.xml"/>
<taskdef name="xmltask" classname="com.oopsconsultancy.xmltask.ant.XmlTask"/>
<xmltask report="true" source="${builddir}/zzz.xml">
<call path="spuds" target="process-spuds">
<param name="spud-kicker" path="@count"/>
</call>
</xmltask>
</sequential>
</macrodef>
xmltask 内で呼び出しのターゲットを呼び出そうとすると、null ポインター例外が発生します。
私は何を間違っていますか?
ファイル zzz.xml には、(おそらく) 整形式の xml が含まれています。これには、count という名前の属性を持つ「spuds」というトップレベルのタグが含まれています。spuds タグで spud-kicker ant ターゲットを呼び出し、count 属性の値をそのタスクに渡します。