报错: class file for org.apache.http.annotation.NotThreadSafe not found

报错:  class file for org.apache.http.annotation.NotThreadSafe not found

问题描述

写了了一个HttpClient的封装类,运行时候报错: class file for org.apache.http.annotation.NotThreadSafe not found。

引起原因

常见的两个原因:

  1. The problem is that the httpclient and httpcore versions are incompatible。翻译过来就是引发这个问题的原因是httpclient包和httpcore包的版本号不兼容。
  2. 4.5.2的httpclient本身就是依赖了4.4.4版本的httpcore;但由于项目里偏偏引入更高版本的httpcore,一旦导入某些jar包譬如log4j2包含httpcore,就会编译报错

这里我没有使用log4j,而是使用了httpclient和httpcore,所以是包不兼容引起的。

解决方案

这里我把httpclient升级成4.5.13版本,httpcore升级成4.4.15,不再报错。

image

image

大T笔记所有文章均为本人原创,转载请您注明来源,并留下原文链接地址,是对我的尊重,也是对知识的尊重,谢谢!
大T笔记 » 报错: class file for org.apache.http.annotation.NotThreadSafe not found

大T笔记-我的个人互联网创业和自由职业之路

关于我 我的百宝箱
大T笔记-专注个人互联网创业和自由职业