1

をダウンロードXalan-Java Version 2.7.1して解凍し、PATHJava およびCLASSPATHXalan用に設定しました。

set path=%PATH%;c:\Program Files\Java\jre6\bin

set classpath=%CLASSPATH%;c:\Xalan\

(xalan.jar、xercesImpl.jar、xml-apis.jarのみクラスパスも設定してみました)

簡単な Hello World の例 (またはその他の例) をテストする場合:

java org.apache.xalan.xslt.Process -in hello.xml -xsl hello.xsl -out hello.html

私はいつもこれを取得します:

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

何が問題ですか ?誰かがアイデアを持っていますか?

ありがとう。

4

2 に答える 2

5

さて、これは私がそれを機能させるためにしたことです、最後に:

コマンドラインから次のようにファイルを実行するxalan.jarにコピーします。c:\Program Files (x86)\Java\jre6\lib\

java -classpath "c:\Program Files (x86)\Java\jre6\
lib\xalan.jar";"c:\xalan-j_2_7_1\serializer.jar" org.apache.xalan.xslt.Process -
in hello.xml -xsl hello.xsl

それなしserializer.jarでは動作しません!

于 2011-11-20T08:37:54.243 に答える
1

シリアライザーはすべての場合に必要なわけではありません。たとえば、XSLTがpipeDocumentを使用している場合は、それが必要になります。

このエラーは、xalan.jarの「org.apache.xalan.xslt.Process」が見つからないことを示しています。クラスパスを再確認してください。hello.xmlとhello.xslを除外して、水が濁らないようにします。クラスパスが正しければ、これだけで

java org.apache.xalan.xslt.Process

出力を提供します(Xalan-Jコマンドラインオプション)。

于 2012-05-26T09:27:46.160 に答える