java.lang.NoClassDefFoundError: org/apache/http/ssl/TrustStrategy 错误解决办法

 2023-09-11 阅读 25 评论 0

摘要:前天,在调第三方SDK开发的时候,报了一个错误为java.lang.NoClassDefFoundError: org/apache/http/ssl/TrustStrategy,下面来说下产生这个的原因和解决办法: 原因:TrustStrategy这个类找不到,经查看这个TrustStrategy位于org.apache

前天,在调第三方SDK开发的时候,报了一个错误为java.lang.NoClassDefFoundError: org/apache/http/ssl/TrustStrategy,下面来说下产生这个的原因和解决办法:

原因:TrustStrategy这个类找不到,经查看这个TrustStrategy位于org.apache.http.ssl.TrustStrategy包底下,属于httpcore-4.4.jar包底下,或者更高版本底下,而4.4以下的版本并没有这个类,所以产生这个错误的原因就是项目底下引用了低版本的httpcore的jar包,而这个httpcore的jar包又是跟httpclient的jar包相关联的,所以httpclient的jar包也要用较高版本。

解决办法:由于我的是Maven项目,所以全局搜索引用了httpcore的jar包,即搜索httpcore,然后选择后缀名为xml的文件名,后面搜索出来一看有些模块果真引用了较低版本的httpcore和httpclient的jar包,pom.xml打包文件引用打代码如下:

        <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpcore</artifactId><version>4.3.2</version></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.3.3</version></dependency>

java util,此时就必须把这段代码改为如下所示,较高版本的相关jar包,但前提是你私服底下有这个jar包,或者本地资源库有这个jar包:

        <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpcore</artifactId><version>4.4.3</version></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.1</version></dependency>

后面,改完后再重新一试,还是报这个错误,原来httpcore的jar包和httpclient的jar包是有关联的,而pom.xml有些只有依赖了httpclient,但是在Maven依赖库底下还是有httpcore的jar包,还是低版本的,所以还是全局搜httpclient,把pom.xml底下的关于httpclient的全部改为如下所示的代码,没有httpcore的也要加这个依赖,不然还是会报错,代码如下所示:

        <dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpcore</artifactId><version>4.4.3</version></dependency><dependency><groupId>org.apache.httpcomponents</groupId><artifactId>httpclient</artifactId><version>4.5.1</version></dependency>

Caused by: java.lang.ClassNotFoundException: org.apache.http.ssl.TrustStrategy
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
… 19 more

然后上述的报错就解决了。

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/3/47435.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息