0

当我想使用某个 jar 文件时出现“java.lang.NoClassDefFoundError”异常。

Exception in thread "main" java.lang.NoClassDefFoundError: .
org/apache/http/client/ClientProtocolException
    at ?uk.org.taverna.server.client.connection.ConnectionFactory.getConnection(ConnectionFactory.java:63)
    at uk.org.taverna.server.client.Server.<init>(Server.java:99)
    at uk.org.taverna.server.client.Server.<init>(Server.java:126)
    at uk.org.taverna.server.client.Server.connect(Server.java:293)
    at uk.org.taverna.server.usage.ServerUsage.Usage(ServerUsage.java:24)
    at Test.main(Test.java:23)
Caused by: java.lang.ClassNotFoundException: org.apache.http.client.ClientProtocolException
    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)

我将此 jar 文件导入 jar 库,当我调用该 jar 文件中的方法时,我得到了这个异常。顺便说一句,这个jar文件是我自己写的,我可以正常运行。我不知道如何解决这个问题,我对java很陌生。

提前致谢。

4

2 回答 2

4

您至少还需要 HttpClient jar-library。您可以在Apache Commons网站上获得它。

Jar 库可能并且经常引用另一个 jar 库。在您使用的案例库中,您使用的是 Apache Commons 框架中的 HttpClient 库。您需要将此库添加到您的项目中。

于 2012-07-07T17:22:44.220 回答
1

您应该将您在应用程序中使用的所有 jar 文件放在libs应用程序目录的文件夹中。因此,如果您使用apachecommonsjar 文件,请将 jar 文件复制并粘贴到libs应用程序中的文件夹中。

于 2012-07-07T17:42:34.197 回答