你的类路径中有两个不同版本的httpcore:
~/.m2/repository/org/apache/httpcomponents/httpcore/4.0.1/httpcore-4.0.1.jar ~/ms_thesis/ONOS/httpcore-4.1.jar
......虽然第二个实际上是出口的 CLASSPAHT 根据你的问题。我们也不知道你的是什么 lib 目录 - 甚至可以 更多 版本。
CLASSPAHT
lib
还有两个版本的httpclient,除了一个被注释掉。我建议你把所有这些都排除在外,这样你就可以了 只要 使用两个库的最新版本。我的猜测是实际被拾取的是一个版本的httpclient和一个版本的httpcore,它们是不兼容的。要么就是这样,要么只是在httpcore中,从一个jar文件中拾取一些清单条目,但是当一个类被要求它获取另一个时。
无论哪种方式,一次在类路径中拥有相同库的两个版本简直是个坏主意。
您还应该确保您使用的httpcore版本适合您使用的httpclient版本。例如,我刚刚下载了最新版本的httpclient(4.2.5),它使用的是httpcore 4.2.4。如果您尝试将httpclient-4.2与httpcore-4.1一起使用,则可能不兼容。