找不到主类:org.apache.xalan.xslt.Process

Joa*_*nne 1 xslt xalan

作为项目的一部分,我被要求进行XML到HTML的转换.我必须使用Xalan版本2.7.0.

但是当我在命令提示符下为xalan设置CLASSPATH时:

set CLASSPATH=%CLASSPATH%;I:\Xalan\xalan-j_2_7_0\xalan.jar
Run Code Online (Sandbox Code Playgroud)

并尝试进行如下转换:

java org.apache.xalan.xslt.Process -in Multimedia\StudentDeals.xml -xsl Multimedia\StudentDeals.xsl -out Multimedia\Deals.html
Run Code Online (Sandbox Code Playgroud)

我总是得到这个:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xalan/xslt
/Process
Caused by: java.lang.ClassNotFoundException: org.apache.xalan.xslt.Process
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
Could not find the main class: org.apache.xalan.xslt.Process.  Program will exit
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么我收到此错误以及如何解决它?谢谢

Mae*_*o13 5

按照上面Mads Hansen提供的链接,我尝试了一些方法.我没有在类路径中指定serializer.jar,但是我确实在调用本身中包含了classpath选项:

java -classpath D:\XSLT_engines\xalan-j_2_7_1\xalan.jar org.apache.xalan.xslt.Process -in input.xml -xsl transformation.xsl -out output.xml
Run Code Online (Sandbox Code Playgroud)