我收到以下错误
Exception in thread "main" java.lang.NoClassDefFoundError: org/jsoup/Jsoup
at Main.main(Main.java:42)
Caused by: java.lang.ClassNotFoundException: org.jsoup.Jsoup
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 1 more
现在我已经做了什么:
我在项目文件夹中创建了一个 libs 文件夹,并在其中添加了 Jsoup.jar
。然后在 eclipse 中单击属性,添加外部 Jar 并添加它。我看到引用的库。
但问题仍然存在。我没有收到编译错误。所以这是一个运行时问题。感谢您的帮助。
编辑: 我发现了以下内容 如果我使用编译
javac -classpath /path/to/jsoup.jar myclass.java
然后
java -classpath /path/to/jsoup.jar myclass
它运行完美。 现在。这对我不起作用,因为我将在没有 Jsoup 的计算机上使用我的应用程序。那么如何解决这个运行时问题呢?
最佳答案
转到运行配置...
菜单并检查运行任务的类路径。看起来您为编译步骤添加了库,但它没有在运行步骤中设置。
编辑(评论后)
我深入研究了这个问题,发现应用程序容器需要这种依赖关系。因此,您只需将此库添加到应用程序服务器的类路径中即可。如果您使用 Tomcat,只需将库放入 %CATALINA_HOME%\lib
目录即可。
关于java - Jsoup运行时错误: Exception in thread "main" java. lang.NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16148962/