4 回答
TA贡献1725条经验 获得超7个赞
问题在于 aws 对org.apache.httpcomponents:httpclient.
所需的最低版本httpclient是4.5.9. 如果你在你的项目pom中降级那个版本,那么就会出现这个问题。
要检查您正在运行的版本,请尝试:
mvn dependency:tree
找出httpclient版本。这是我的样子:
[INFO] | +- software.amazon.awssdk:apache-client:jar:2.8.4:runtime
[INFO] | | +- org.apache.httpcomponents:httpclient:jar:4.5.10:runtime
[INFO] | | | \- commons-codec:commons-codec:jar:1.11:runtime
[INFO] | | \- org.apache.httpcomponents:httpcore:jar:4.4.12:runtime
解决方案:
如果您通过使用任何 bom 或依赖管理来降级版本(在我的例子中spring-boot-starter-parent:2.1.5.RELEASE导致了这种情况发生),那么只需将其添加到您的 pom & 它应该可以工作:
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.9</version>
</dependency>
TA贡献1773条经验 获得超3个赞
将以下依赖项添加到 pom 文件将解决此问题。
<dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.9</version> </dependency>
TA贡献1848条经验 获得超10个赞
您是否可以比较实例s3client
(旧版本和有问题的新版本 AWS SDK for Java)。请分享。
可能需要调试和检查。可能两者之间的默认值可能不同。例如,如果默认区域不同,您将无法使用新的 SDK 获得以前保存的对象而无需更改。
此外,由于您正在迁移到主要修订版,因此您很可能会在以后发现更多问题。
添加回答
举报