Al declarar tareas de hormigas externos usando taskdef, por ejemplo antcontrib, la configuración propuesta es utilizar el taskdef followin:¿Por qué no taskdef hormiga no puede cargar un recurso externo
<taskdef resource="net/sf/antcontrib/antcontrib.properties">
<classpath>
<pathelement location="lib/ant-contrib/ant-contrib-1.0b3.jar"/>
</classpath>
</taskdef>
Esto funciona cuando antcontrib .properties se encuentra en net/sf/antcontrib relativo al archivo build.xml.
Pero cuando lo pongo en lib/net/sf/antcontrib y cambia el taskdef en
<taskdef resource="lib/net/sf/antcontrib/antcontrib.properties">
<classpath>
<pathelement location="lib/ant-contrib/ant-contrib-1.0b3.jar"/>
</classpath>
</taskdef>
Ant no es capaz de encontrar el archivo de propiedades, que da el error
[taskdef] Could not load definitions from resource
lib/net/sf/antcontrib/antcontrib.properties. It could not be found.
Parece que hormiga trata el directorio lib por separado y no puede cargar un recurso taskdef desde allí.
Tenía un válido y tenía también extraje las propiedades antcontrib.properties en ./net/sf/antcontrib/ después de leer su explicación, me di cuenta de que podía eliminar el archivo de propiedades y las tareas ant-contrib aún funcionaban. Utilicé el taskdef mencionado en la página de instalación http://ant-contrib.sourceforge.net/#install –
Ernelli
Nos ha ahorrado horas de adivinanzas, en relación con la ruta de jar que era la clave. –