Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/HttpEntity

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/HttpEntity

这个错误困扰了我好久。我需要将我的 java 应用程序导出到 .jar,当我 运行 它时 (java -jar test.jar) 我收到此错误消息。我已经检查过 apache-core-4.3.3.jar 是否包含在内,我已经检查过它是否包含 HttpEntity class,我已经检查过 java 构建路径和清单但是一切正常。

最奇怪的是,在我的代码中我根本没有尝试导入 org.apache.http.HttpEntity。而且我只有 3 classes 所以我不会错过它。

清单文件:

Manifest-Version: 1.0
Main-Class: Main

类:

编辑 我是这样导出的,所以我认为导入的 jars 内容已导出到我的 test.jar 文件中,这要归功于 Export Java source files and resources,对吗?

接下来我应该做什么?

您必须在命令行中将 jar 添加到类路径中:

java -cp <list of jars> -jar test.jar

更新 class 路径。它应该有效

您正在将其导出为 'JAR file',请尝试使用 'runnable JAR file' 向导。

右键单击您的 eclipse 项目 -> 导出.. -> 可运行的 JAR 文件 -> 选择您的配置并选择 "package required libraries into generated JAR"。这将使 eclipse 为您完成所有工作。