Si tiene este problema, compruebe que no está utilizando 1.8.1 hormiga, porque hay una bug en 1.8.1 hormiga que impide que esto trabaja. (Aunque este no es el problema en la publicación original, porque eso fue antes de que se lanzara Ant 1.8.1).
Las opciones son:
- utiliza una versión de hormiga que no tiene el insecto (por ejemplo Ant 1.7.1).
- especificar explícitamente saxon9.jar en el
CLASSPATH
a Ant antes de que comience, ya sea:
- establecer la variable de entorno del sistema
CLASSPATH
, o
- Usar la opción de línea de comandos para
-lib
ant
- Definir su propia tarea usando SAXON Ant (como se describe en otra respuesta en este hilo).
- Solución añadiendo
processor="org.apache.tools.ant.taskdefs.optional.TraXLiaison"
como un atributo del elemento de tarea xslt
.
lo haría sugerencia usando la opción 1, seguido de la opción 4.
Opción 2 va a funcionar, pero atribuye la responsabilidad de la persona que ejecuta la hormiga para configurar su entorno y ejecutar adecuadamente la hormiga. Supongo que no quiere eso, por lo que está tratando de obtener el atributo classpath
en la tarea xslt
para que funcione.
La opción 3 tiene limitaciones, porque SAXON Ant requiere descargar e instalar su archivo JAR. Además, SAXON Ant no funciona con SAXON 9.2 o posterior (y SAXON Ant no se ha actualizado desde su creación en junio de 2008).
En teoría, la especificación de un subelemento factory
hace que el procesador XSLT que desea utilizar explícitamente - para evitar que el cargador de clases encuentre un procesador XSLT diferente anteriormente en su búsqueda, y usarlo en lugar de su procesador XSLT que está más allá abajo en CLASSPATH. En la práctica (al menos en ant 1.7.0, 1.7.1 y 1.8.0) si se especifica el subelemento factory
, la tarea xslt
ignora el atributo classpath
, lo que significa que debe recurrir a la especificación explícita de CLASSPATH (opción 2). Por lo tanto, no ayuda a resolver el problema original. Sin embargo, esto parece haberse solucionado en el código fuente de Ant, por lo que podría funcionar en versiones posteriores a la 1.8.1.
Eso puede ser interesante http://www.xml.com/pub/a/2002/12/11/ant-xml.html pero un poco viejo (mtxslt última actualización es 2002 - http: //mtxslt.sf .net /) – paulgreg