gpt4 book ai didi

java - AWS Java SDK 使用旧版本的 jackson jar

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:11:54 36 4
gpt4 key购买 nike

目前我正在努力在我现有的应用程序中添加 AWS Java SDK 以执行与 AWS 云相关的操作。在为最新版本(即 1.11.113)导入 aws java sdk 时,我遇到了运行时异常。在研究异常后,原因是 java sdk 使用不推荐使用的版本或 jackson jar 的不兼容版本。

SDK 使用版本 4.1 的 jackson jar,而要求的版本必须至少为 5。即使我提供最新的 jackson jar,但它仍然引用 SDK 中存在的 jar。下面的代码快照将有助于轻松识别这一点

Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.databind.ObjectMapper.enable([Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/databind/ObjectMapper;
at com.amazonaws.partitions.PartitionsLoader.<clinit>(PartitionsLoader.java:54) [aws-java-sdk-core-1.11.113.jar:]
at com.amazonaws.regions.RegionMetadataFactory.create(RegionMetadataFactory.java:30) [aws-java-sdk-core-1.11.113.jar:]
at com.amazonaws.regions.RegionUtils.initialize(RegionUtils.java:64) [aws-java-sdk-core-1.11.113.jar:]
at com.amazonaws.regions.RegionUtils.getRegionMetadata(RegionUtils.java:52) [aws-java-sdk-core-1.11.113.jar:]
at com.amazonaws.regions.RegionUtils.getRegion(RegionUtils.java:105) [aws-java-sdk-core-1.11.113.jar:]
at com.amazonaws.regions.Region.getRegion(Region.java:43) [aws-java-sdk-core-1.11.113.jar:]

我怎样才能避免代码使用这个特定的 jar 并让它使用最新的 jar 。我正在使用 gradle 作为构建工具。

最佳答案

你在使用maven吗?我之前使用 joda-time 时遇到过类似的问题,然后通过 <exclusion> 解决了标签。 <exclusion>标签可用于排除 aws-java-sdk 中的旧 jackson 。以下是解决问题的方法:

    <dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk</artifactId>
<version>1.11.113</version>
<exclusions>
<exclusion>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.8.8</version>
</dependency>

关于java - AWS Java SDK 使用旧版本的 jackson jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43362138/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com