gpt4 book ai didi

java - NoClassDefFound错误: org/dom4j/io/SAXReader

转载 作者:行者123 更新时间:2023-11-30 03:24:24 29 4
gpt4 key购买 nike

我目前已导入以下内容

import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

我正在批处理文件的帮助下运行该程序,但它抛出以下错误 -

C:\AISHU\WEB SERVICES>java  -jar webservices.jar
C:\AISHU\TEST FOLDER\formteest\fulltestxsd.xsd
Exception in thread "main" java.lang.NoClassDefFoundError:org/dom4j/io/SAXReader
at XsdToXmlActual.main(XsdToXmlActual.java:29)
Caused by: java.lang.ClassNotFoundException: org.dom4j.io.SAXReader
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)
... 1 more

C:\AISHU\WEB SERVICES>pause
Press any key to continue . . .

但是当我在 Eclipse 中运行它时,它工作得非常好。我在配置构建路径时将其添加为外部 JAR 。因此,在 .classpath 文件 中,该位置已经存在。

<classpathentry kind="lib" path="C:/Users/Aishu/Downloads/dom4j-1.6.1.jar"/>
<classpathentry kind="lib" path="C:/Users/Aishu/Downloads/jaxen-1.1-beta-6.jar"/>

我已尝试重新安装dom4j,但仍然导致相同的错误。我已经在这个问题上停留了几个小时,非常感谢任何帮助。

最佳答案

当您使用 -jar 选项运行程序时,您将其作为 executable jar 运行。 。在这种情况下,解析类路径的规则是不同的。 Java将忽略-cp-classpath选项以及CLASSPATH环境变量,并且只会查看 list 文件中定义的类路径 jar 的。

您必须将必要的 jar 文件放入 list 文件的类路径中。 list 文件应如下所示:

Manifest-Version: 1.0
Main-Class: XsdToXmlActual
Class-Path: dom4j-1.6.1.jar jaxen-1.1-beta-6.jar

将这两个jar文件放在与您自己的jar文件相同的目录中,然后使用-jar选项运行您自己的jar文件:

java -jar webservices.jar

参见:Adding Classes to the JAR File's Classpath

关于java - NoClassDefFound错误: org/dom4j/io/SAXReader,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30612304/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com