我正在尝试从 ant 运行 XSLT 转换文件。
我正在使用带有 saxon 9 的 XSLT 2.0 样式表解析器(支持 XSLT 2.0)。
问题是 ant 似乎总是在调用 XSLT 1.0 解析器。
这是我的 Ant 文件:
<xslt style="stylesheet.xslt"
basedir="core/"
extension=".xml"
destdir="core/"
classpath="D:\\DevTools\\saxon\\bin\\saxon9.jar">
</xslt>
如果我直接调用它(没有 Ant ),它就可以工作。
任何的想法 ?
最佳答案
问题在于,虽然将 Saxon 添加到类路径中,但默认 JAXP 机制会确定使用哪个 TransformerFactory,并且它将使用默认值 Xalan。您要么需要:
javax.xml.transform.TransformerFactory
系统变量到 net.sf.saxon.TransformerFactoryImpl
, CLASSPATH
系统变量,或 <factory name="net.sf.saxon.TransformerFactoryImpl"/>
内xslt
元素 关于xslt - 如何用 ant 执行 XSLT 2.0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/919692/