6

私のプロジェクトは、aws-java-sdk-1.11.15 を使用して Amazon S3 にファイルをアップロードしようとしています。CLI でプロジェクトをビルドするために ant を使用しています。私が使用しているジャクソンのバージョンは 2.8.0 です。libフォルダーをクラスパスに追加しています。すべての jar ファイルは lib フォルダーにあります。コードを実行すると、次のようになります-

Exception in thread "main" java.lang.NoSuchMethodError: com.fasterxml.jackson.databind.ObjectMapper.enable([Lcom/fasterx
ml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/databind/ObjectMapper;
at com.amazonaws.partitions.PartitionsLoader.(PartitionsLoader.java:54)
at com.amazonaws.regions.RegionMetadataFactory.create(RegionMetadataFactory.java:30)
at com.amazonaws.regions.RegionUtils.initialize(RegionUtils.java:66)
at com.amazonaws.regions.RegionUtils.getRegionMetadata(RegionUtils.java:54)
at com.amazonaws.regions.RegionUtils.getRegion(RegionUtils.java:107)
at com.amazonaws.services.s3.AmazonS3Client.createSigner(AmazonS3Client.java:3256)
at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:3952)
at com.amazonaws.services.s3.AmazonS3Client.putObject(AmazonS3Client.java:1538)
at code4goal.antony.resumeparser.ResumeParserProgram.main(ResumeParserProgram.java:613)

このコードの場合 -

AmazonS3 s3client = new AmazonS3Client(new ProfileCredentialsProvider());
try
{
    File file = new File(uploadFileName);
    s3client.putObject(new PutObjectRequest(bucketName, keyName, file));
}

エラーは s3client.putObject(new PutObjectRequest(bucketName, keyName, file)); にあります。

4

4 に答える 4

0

aws-java-sdk-bundle-1.12.39 ライブラリを使用してみてください。解決しました。bundle を使用した後、com.amazonaws.thirdparty.* も含めるようにしてください。

于 2021-08-05T12:30:35.510 に答える