java.lang.NoClassDefFoundError

java.lang.NoClassDefFoundError,java,exception,Java,Exception,当我想使用某个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(Connection

当我想使用某个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)
线程“main”java.lang.NoClassDefFoundError中出现异常:。 org/apache/http/client/ClientProtocolException 位于?uk.org.taverna.server.client.connection.ConnectionFactory.getConnection(ConnectionFactory.java:63) 位于uk.org.taverna.server.client.server.(server.java:99) 位于uk.org.taverna.server.client.server.(server.java:126) 位于uk.org.taverna.server.client.server.connect(server.java:293) 位于uk.org.taverna.server.usage.ServerUsage.usage(ServerUsage.java:24) at Test.main(Test.java:23) 原因:java.lang.ClassNotFoundException:org.apache.http.client.ClientProtocolException 在java.net.URLClassLoader$1.run(URLClassLoader.java:366) 在java.net.URLClassLoader$1.run(URLClassLoader.java:355) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.net.URLClassLoader.findClass(URLClassLoader.java:354) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:423) 位于sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:356) 我将这个jar文件导入jar库,当我调用那个jar文件中的方法时,我得到了这个异常。顺便说一下,这个jar文件是我自己写的,我可以正确运行它。 我不知道如何解决这个问题,我对java很陌生

提前谢谢


Sandy

您还需要至少一个HttpClient jar库。你可以在网站上找到它


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

您还需要至少一个HttpClient jar库。你可以在网站上找到它


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

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

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

它可以找到org.apache.http.client.ClientProtocolException。这可能是由于Rafael建议的jar文件丢失所致。它可以找到org.apache.http.client.ClientProtocolException。这可能是因为Rafael建议的jar文件丢失。答案肯定是正确的,但我想知道为什么在通过maven使用时,HttpClient没有添加为fluent hc的可传递依赖项?@Jan我认为最好解决这个问题,开发了这个库。我发现这个产品还可以。在4.4.1版中尝试导入
fluent hc
时遇到了一些奇怪的行为。然后谷歌搜索说这根本不应该存在。我使用了
4.3.6
,它按照预期设置了所有可传递依赖项。干杯答案绝对正确,但我想知道为什么在通过maven使用fluent hc时,HttpClient没有添加为可传递依赖项?@Jan我认为解决这个问题会更好,开发了这个库。我发现该产品还可以。在4.4.1版中尝试导入
fluent hc
时遇到了一些奇怪的行为。然后谷歌搜索说这根本不应该存在。我使用了
4.3.6
,它按照预期设置了所有可传递依赖项。干杯