【发布时间】:2014-09-11 06:43:51
【问题描述】:
我在这里看到了各种类引发的异常的此类错误,尽管我还没有找到适合我的解决方案。
我正在尝试让 AWS Java SDK 在本地工作,这样我就可以编写一个从 Kinesis 流中读取数据的测试应用程序。
问题是,当我运行init() 静态方法时,我遇到以下错误:
Exception in thread "main" java.lang.NoSuchMethodError:
org.apache.http.impl.conn.DefaultClientConnectionOperator.<init>
(Lorg/apache/http/conn/scheme/SchemeRegistry;Lorg/apache/http/conn/DnsResolver;)V
现在,这不是我遇到的第一个错误。在此之前,我已经抛出了四五个异常,所有这些异常的解决方案只是将一些 jar 导入到项目中。例如:
- apache-httpcomponents-httpclient.jar
- com.fasterxml.jackson.databind.jar
- commons-codec-1.9.jar / commons-codec-1.9-javadoc.jar / commons-codec-1.9-sources.jar
- httpclient-4.2.jar
- httpcore-4.0.1.jar
我在这里的其他线程中看到它可能是 httpcore 库的版本,但是我导入了最新的。
有什么办法可以解决这个问题吗?我正在考虑重新开始,因为我的项目似乎是一堆进口,我不确定我是否会真正利用。此外,我无法调试 AWS 开发工具包的二进制导入(或者我不能?)。
干杯。
【问题讨论】:
-
好吧,这么小的进步,我在导入所有这些 jar 的过程中度过了愉快的时光,以至于我在 apache HTTP 核心的两个版本之间产生了矛盾。我会继续并会发布进度。
-
您使用的是 Tomcat 对吗?如果是这种情况,请查找哪个 JAR 包含它找不到的类(您可以使用 ZIP 程序检查 JAR 的内容),然后尝试将 JAR 放在不同的包含文件夹中。 IE。 \Tomcat\Lib 或 \webapps\myapp\WEB-INF\lib 等取决于您的 Tomcat 版本,可能还有其他文件夹可以“尝试”。
-
谢谢 munyul,通过删除中断的 httpclient 库的过时版本解决了问题。然后只是添加了一个缺少的 joda-time 包,问题就解决了。
标签: java amazon-web-services jar dependency-management