尝试运行 xalan 来制作文档样式表,得到以下信息:
(Location of error unknown)XSLT Error (java.lang.NoClassDefFoundError): org/apache/xml/serializer/SerializerTrace
这是shell脚本,Lx.sh
!/bin/sh
export X=/home/leffstudent/docbook-xsl-1.79.1/tools/lib/
export CLASSPATH=$X/xmlresolver.jar:$X/xalan.jar:$X/xercesImpl.jar:$X/xml-apis.jar:/home/leffstudent/docbook-xsl-1.79.1/extensions/xalan27.jar:/home/leffstudent/xsl2/xsl/tools/lib/xalan/serializer.jar
java -Djava.endorsed.dirs=$X org.apache.xalan.xslt.Process -out $1.fo -in $1 -xsl stO.xsl -param use.extensions 1 -param default.table.width auto -param title.margin.left 0pc param insert.xref.page.number yes -param xref.with.number.and.title 0
当我运行脚本时,我收到以下错误消息
Lx.sh test1.xml
Invalid option: param
Invalid option: insert.xref.page.number
Invalid option: yes
(Location of error unknown)XSLT Error (java.lang.NoClassDefFoundError): org/apache/xml/serializer/SerializerTrace
Exception in thread "main" java.lang.RuntimeException: org/apache/xml/serializer/SerializerTrace
at org.apache.xalan.xslt.Process.doExit(Process.java:1155)
at org.apache.xalan.xslt.Process.main(Process.java:1128)
我按照精彩书籍第 25 至 26 页的说明进行操作: DocBook XSL:完整指南:第二版:Sagehill Enterprises
在第 22 页上,列出了三个需要的 jar 文件:
xalan.jar
, xml-apis.jar
,xercesImpl.jar
当这不起作用并且我收到上述错误消息时,我添加了
serializer.jar
这没有帮助。
注意:我最初使用 saxon 将 docbook xml 转换为 XSL-FO。有人建议我尝试其他处理器之一。那是问题号 55908387 因此,我尝试了 Xalan 并遇到了上述问题。