对此问题的唯一合理解释是,类路径上有一个较旧的HttpCore版本(除非您还希望考虑火星上的绿人有可能从飞碟上远程干扰您的计算机)。
您可以将此代码段添加到您的代码中,以找出从中提取该类的jar。这可能有助于找出为什么该jar首先位于您的类路径中。
ClassLoader classLoader = MyClass.class.getClassLoader();URL resource = classLoader.getResource("org/apache/http/message/BasicLineFormatter.class");System.out.println(resource);这基本上告诉我,在我的情况下,jar驻留在本地Maven存储库中,并且可能已被Maven添加到类路径中
jar:file:/home/oleg/.m2/repository/org/apache/httpcomponents/httpcore/4.3.1/httpcore-4.3.1.jar!/org/apache/http/message/BasicLineFormatter.class



