我正在使用 Saxon 4.4.2 将 DocBook 转换为各种格式(例如 HTML、PDF、ePub)。我正在使用 Eclipse 在 MacBook Pro 上进行开发。一切都是用 Java 编写的。在我的 Mac 上,一切正常。当我使用 Eclipse 生成可部署插件,复制该插件并将其放入我在 Windows 7 上安装的 Eclipse 中,并运行从 DocBook 到 HTML 的转换时,Saxon 报告“编译样式表失败。检测到 1 个错误”。
错误来自
com.icl.saxon.TransformerFactoryImpl,方法 newTemplates 第 120 行。
由
com.icl.saxon.TransformerFactoryImpl,方法 newTransformer,第 72 行。
我的调用代码行是:
Transformer transformer = tfactory.newTransformer(xsl);
xsl 的设置是通过这一行完成的:
StreamSource xsl = new StreamSource(DocBookTransformer.class.getResourceAsStream("/lib/docbook-xsl-1.76.1/xhtml/docbook.xsl");
为什么 Saxon 在 Mac 上处理样式表时不会出错,但在 Windows 上却无法解析它,因为它是相同的 Saxon Jars 并且在两台机器上都在处理相同的样式表文件?