线程“main”中的异常 java.lang.NoClassDefFoundError: org/apache/http/ConnectionReuseStrategy:

2023-12-09

我正在尝试使用 Eclipse 在 Maven 项目中作为 Java 应用程序运行,但出现以下运行时错误。错误如下所示。

线程“main”java.lang.NoClassDefFoundError 中出现异常: org/apache/http/ConnectionReuseStrategy 位于 com.wang.testMaven.App.main(App.java:16) 原因: java.lang.ClassNotFoundException: org.apache.http.ConnectionReuseStrategy 位于 java.net.URLClassLoader.findClass(URLClassLoader.java:381) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:424) at java.lang.ClassLoader.loadClass(ClassLoader.java:357)

我的代码如下所示

public class App 
{
    public static void main( String[] args )
    {
        System.out.println( "Hello World!" );
        HttpClient httpClient = HttpClientBuilder.create().build();
        System.out.println( "Hello World!" );

    }
}

我的pom.xml如下所示

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.wang</groupId>
  <artifactId>testMaven</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>testMaven</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
  <dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpcore</artifactId>
    <version>4.1-alpha1</version>
</dependency>

    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.5.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpmime</artifactId>
            <version>4.5.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpcore</artifactId>
            <version>4.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient-cache</artifactId>
            <version>4.5.2</version>
        </dependency>
  </dependencies>
</project>

任何想法..谢谢


我意识到有几个依赖项具有相同的 groupId 和 artifactId。

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpcore</artifactId>
    <version>4.1-alpha1</version>
</dependency>

And

<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpcore</artifactId>
    <version>4.1</version>
</dependency>

实际上,您应该只有一个具有相同 groupId 和 artifactId 的依赖项。

因此,首先我删除了 httpcore:4.1-alpha1 依赖项并执行了测试类。我得到了例外

java.lang.NoClassDefFoundError: org/apache/http/config/Lookup
    at com.test.so.Test1.test(Test1.java:12)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

然后我使用 httpcore:4.1-alpha1 而不是 httpcore-4.1,我得到了同样的异常。

因此,当我根据以下内容将 httpcore 版本更新为 4.3.3 时SO link,我得到的例外是 -

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/ssl/SSLContexts
    at org.apache.http.impl.client.HttpClientBuilder.build(HttpClientBuilder.java:966)
    at com.amitg.so.App.main(App.java:11)

最后将httpcore版本更新到4.4,一切正常。所以它应该适用于 4.4 以上的所有 httpcore 版本 jar。 (我测试了 4.4.4,它也工作得很好。)。提到了可用版本here。请找到工作代码here.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

线程“main”中的异常 java.lang.NoClassDefFoundError: org/apache/http/ConnectionReuseStrategy: 的相关文章

随机推荐

  • Vue路由器参数对象类型在浏览器后退按钮上更改

    我正在传递一个参数论坛 它是 Vue js 中路由的对象 使用 vue router path forum forum name ForumView component ForumView props true 当我通过使用页面上的另一个链
  • 鼠标悬停时反转文本颜色

    我想在使用自定义 黑色 光标悬停黑色文本时反转黑色文本 这个GIF演示了效果 我无法用 CSS 和 JS 来实现这个工作 我猜是与混合混合模式 剪贴蒙版 伪元素和过滤器的一些组合 以下代码使光标变为白色 但不允许黑色文本变成白色 听起来很抽
  • 尝试抓住展开的线吗?斯威夫特 2.0、XCode 7

    我的代码中有以下展开行 UIApplication sharedApplication openURL NSURL string url 有时会出现这样的致命错误 致命错误 在解包可选值时意外发现 nil 我知道为什么有时会出现此错误 但是
  • 将解析结果自动串联成向量

    我编写了一些规则来将浮点数解析为两个 std vector 的浮点数 它们又存储在一个结构中 数据输入 object name01 v 1 5701 33 8087 0 3592 v 24 0119 0 0050 21 7439 a com
  • 在 WHERE 子句中应用条件过滤

    我在 SELECT 语句中加入几个表 如下所示 它具有三个参数 DECLARE Jobid INT 0 leadid INT 0 employeeid INT 0 SELECT e id l id j id e NAME l NAME j
  • 如何在 jsp 页面和 servlet 之间共享数据

    我有几个 jsp 页面和几个 servlet 我需要将一些信息保存到会话变量中 在jsp页面中我简单的引用 session get or session set 无需显式声明 HttpSession 对象 但在 servlet 中 适用正确
  • 如何防御性地编写代码以防止随机引用“表 0”和空值?

    我正在检索适量的数据并对其进行处理 没有什么独特的 起初奇怪的是 对于某些数据集 它工作得很好 而对于其他数据集 我收到以下错误消息 不过 这个错误消息似乎完全是胡言乱语 无论如何都是误导性的 因为失败集的数据并不比成功集的数据多 所以运行
  • 排序命令在 unix 中无法正常工作以对 csv 文件进行排序

    我有一个 csv 文件 需要根据时间戳进行排序 它是 csv 中的第三列 我使用以下命令进行排序 awk NR lt 2 print next print sort t k3 8 3 11nr k3 1 3 3rM k3 4rd 当年份为单
  • Session 变量在 ASP.Net 页面的 Parallel.For 循环中是线程安全的吗

    在下面的代码中更改会话变量 即 Session Progress 是否安全 此代码是 ASP Net 页面隐藏代码的一部分 并行运行循环时 两个迭代可能会同时运行 如果两个迭代都更改了同一会话变量 则会导致问题 public void Lo
  • 如何为我的 AWS-EB 实例启用 SSH?

    我有一个正在运行的 AWS Elastic Beanstalk 实例 并附加了 RDS 数据库 并且希望从我的开发计算机启用 SSH 最好的方法是什么 具体来说 我可以从 AWS 控制台执行此操作吗 我能够保留当前的所有 EB 设置和结构吗
  • Cassandra 更改列类型:哪些类型兼容?

    互联网上有一些关于无法更改列类型的示例的一些零碎信息 例如 在数据斯塔克斯网站有一个提到 更改聚类列的类型 更改其上的列 定义了一个索引 或者 例如 here提到你无法转换uuid to timeuuid 从我个人的经历来看 我无法改变te
  • 使用 MinGW 编译为带有一些未定义引用的 .dll

    我听说所有 Windows DLLmust包含它引用的每个符号的定义 因此像这样的 DLL 文件永远不会编译 因为它没有实现bar void bar declspec dllexport void foo bar 我认为类比是 DLL 本质
  • 更改字符向量的选定元素

    以下原则是否有更短的版本来重命名数据框的某些列 data1 lt data frame a 1 3 b 1 3 c 1 3 data1Names lt names data1 data1Names data1Names a lt hello
  • 关于 torch.nn.DataParallel 的问题

    我是深度学习领域的新手 现在我正在复制一篇论文的代码 因为他们使用多个 GPU 所以有一个命令torch nn DataParallel model device ids args gpus cuda 在代码中 但我只有一个GPU 什么 我
  • 解决 IE7 bug“input type=file”onchange 触发两次?

    你有没有遇到过这个IE7的bug
  • 将 Silverlight 连接到本地计算机的 COM 端口

    我一直在寻找一种方法让我的 silverlight 应用程序与本地计算机上的 COM 端口进行通信 有没有人能够让 Silverlight 成功连接到本地计算机的 COM 端口 如果是这样 你能指出我的文档吗 Silverlight 无法做
  • java中12小时制到24小时制的转换

    在我的应用程序中 我需要格式化12 hours时间到24 hours时间 我必须使用什么方法 例如 像这样的时间10 30 AM java中如何转换为24小时时间 尝试这个 import java text SimpleDateFormat
  • 导入 RealmSwift 不再使用 CocoaPods 工作

    RealmSwift 的 CocoaPods 安装克鲁赫森受到推崇的here 或者也可以从realm io页面推荐here 基本上可以工作 但是我使用 Swift 0 92 3 的应用程序中仍然存在一个问题 以下导入不再被识别 import
  • Android 黑屏前的启动画面

    我想在 onCreate 方法中初始化所有内容时显示启动屏幕 但我需要将内容绘制到屏幕上的组件也在初始化 因此当我启动应用程序时和 onCreate 之后会出现黑屏方法已完成 然后仅绘制第一个屏幕 我想要一个闪屏 而不是黑屏 这是我在 on
  • 线程“main”中的异常 java.lang.NoClassDefFoundError: org/apache/http/ConnectionReuseStrategy:

    我正在尝试使用 Eclipse 在 Maven 项目中作为 Java 应用程序运行 但出现以下运行时错误 错误如下所示 线程 main java lang NoClassDefFoundError 中出现异常 org apache http