java - 提供商链未获取 AWS 凭证文件

标签 java macos amazon-web-services centos6 aws-sdk

我在设置 aws 凭据时遇到问题。我在 MacOSX 和 CentOS 6.3 上遇到了同样的问题。我更愿意将凭据保留在 ~/.aws/credentials 文件中,如 http://docs.aws.amazon.com/AWSSdkDocsJava/latest/DeveloperGuide/java-dg-setup.html#java-dg-install-sdk 中所述但是在以

的形式输入凭据之后
[default]
aws_access_key_id = your_access_key_id
aws_secret_access_key = your_secret_access_key

我得到这个异常

Exception in thread "main" com.amazonaws.AmazonClientException: Unable to load AWS credentials from any provider in the chain
    at com.amazonaws.auth.AWSCredentialsProviderChain.getCredentials(AWSCredentialsProviderChain.java:77)
    at com.amazonaws.services.s3.AmazonS3Client.invoke(AmazonS3Client.java:2853)

我用来设置 s3Client 的 java 代码如下:

s3Client = new AmazonS3Client(new DefaultAWSCredentialsProviderChain());

即使在手动设置凭据文件路径后,它也不起作用:

export AWS_CREDENTIAL_FILE=/home/myuser/.aws/credentials

知道为什么这不起作用吗?

谢谢!

最佳答案

原来我的 pom 文件中有一个旧版本的 aws java sdk,我忘记更新了。效果很好,因为我已将其更新到最新版本。

关于java - 提供商链未获取 AWS 凭证文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26347406/

相关文章:

java - Spring 事务内的 Hibernate 实体生命周期和 session 生命周期

java - YouTubeService 类抛出没有此类方法的异常

当我使用 shuffle() 时出现 java 错误,但当我使用 randomNum() 时却没有错误

macos - Crystal 构建失败并显示 "ld: library not found for -lssl"

mysql - brew 在 macOS 上安装 mysql

ruby-on-rails - 如何将 item_lookup 中的 IdType 从 ASIN 更改为 ISBN?

java - java JDBC中的数值溢出异常

javascript - 检查 Amazon S3 上是否存在文件

azure - AWS 中的 WebJobs 是否有其他替代方案(如 Azure)?

objective-c - 如何阻止我的应用程序设置 "quarantine"位?