与 S3 连接期间收到的异常

Exception received during connection with S3

我一直在尝试使用 java 连接 amazon s3。我已经在亚马逊控制台上注册并拥有凭据。但是当我 运行 代码不断在线出错时:

AmazonS3 s3client = new AmazonS3Client(credentials);

Exception received:- *Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
    at com.amazonaws.AmazonWebServiceClient.<clinit>(AmazonWebServiceClient.java:57)
    at bucket_conn.main(bucket_conn.java:25)*

我已经导入了所有重要的 jar 文件。那我到底缺少什么。现在,只需创建连接并获取存储桶。

    String awsAccessKey = "*** access key ***";
    String awsSecretKey = "*** secret key ***";
    AWSCredentials credentials = new BasicAWSCredentials(awsAccessKey, awsSecretKey);
    AmazonS3 s3client = new AmazonS3Client(credentials);
    for (Bucket bucket : s3client.listBuckets()) {
        System.out.println("Bucket Name - " + bucket.getName());
    }



 Exception in thread "main" java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ObjectMapper
at com.amazonaws.util.json.Jackson.<clinit>(Jackson.java:32)
at com.amazonaws.internal.config.InternalConfig.loadfrom(InternalConfig.java:232)
at com.amazonaws.internal.config.InternalConfig.load(InternalConfig.java:249)
at com.amazonaws.internal.config.InternalConfig$Factory.<clinit>(InternalConfig.java:284)
at com.amazonaws.util.VersionInfoUtils.userAgent(VersionInfoUtils.java:139)
at com.amazonaws.util.VersionInfoUtils.initializeUserAgent(VersionInfoUtils.java:134)
at com.amazonaws.util.VersionInfoUtils.getUserAgent(VersionInfoUtils.java:95)
at com.amazonaws.ClientConfiguration.<clinit>(ClientConfiguration.java:42)
at com.amazonaws.services.s3.AmazonS3Client.<init>(AmazonS3Client.java:347)
at bucket_conn.main(bucket_conn.java:25)

您的类路径中缺少 commons-logging.jar。下载它并将其添加到您的类路径中。

更新: 现在你错过了 com.fasterxml.jackson.databind.jar。下载它并将其添加到您的类路径中。