with how compile classes ant classpath taskdef

ant - how - Classpath para taskdef?



compile with ant (2)

Sí. Supongo que miró el documento para taskdef , que solo muestra el nombre de la tarea y la clase de implementación. Sin embargo, taskdef subclases de taskdef typedef , y si observa el documento de este último, verá que también hay un atributo de classpath .

SIN EMBARGO , el uso de este atributo significa que tus scripts hormiga están vinculados a un entorno particular; no son muy portátiles. Un enfoque mucho mejor es pasar el classpath en Ant, usando la opción de invocación -lib .

Estoy definiendo una nueva tarea en Ant. Lo exporté como un contenedor y lo agregué a mi archivo de compilación:

<taskdef classname="X" classpath="Y.jar"/>

El problema es que esto falla en tiempo de ejecución. Me dice que no encontró la clase. Al agregar el jar al classpath, se corrige.

Mi pregunta es: ¿hay alguna forma de que pueda referirme a mi jar desde el archivo de compilación Ant, sin cambiar el classpath?


Si conoce la ruta de su jar, dentro de la secuencia de comandos ant, puede definir la ruta de clases para su propia tarea.

<taskdef name="myTaskName" classname="com.myorg.myclass"> <classpath> <pathelement location="pathToMyJar.jar"/> </classpath> </taskdef>