【发布时间】:2015-02-14 05:38:40
【问题描述】:
我正在尝试使用 Java SDK 以编程方式停止 EC2 实例。我是 AWS api 的新手,但我想做的应该是非常基本的:
BasicAWSCredentials credentials = new BasicAWSCredentials(ACCESS_KEY, SECRET_KEY);
AmazonEC2Client ec2 = new AmazonEC2Client(credentials); //ERROR caused by this line
我见过几个这样的例子,例如here。我知道更好的方法是使用 IAM 角色,但我只是想先让一些东西起作用。创建 AmazonEC2 的行会抛出此错误
java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ObjectMapper at com.amazonaws.util.json.Jackson.
我不知道为什么会抛出未找到类定义的错误。
【问题讨论】:
-
您能确认访问密钥是否有效吗?下载
aws-cli(aws 命令工具)并直接在shell 脚本中运行以确认您可以成功运行命令aws ec2 describe-instance-status -
好的,我做到了,得到了很好的回应。我有一个问题,也许我应该在原始帖子中包含:如果凭据错误是问题所在,我不会得到不同的错误,而不是找不到类错误吗?还是来自 AWS api 调用的错误不能描述问题?
-
您可以使用失败的访问密钥从头开始测试。
-
如果在检查访问密钥之前抛出类未找到错误怎么办?
-
你可以试试这个官方文档 (docs.aws.amazon.com/AWSSdkDocsJava/latest/DeveloperGuide/…) 吗?
标签: java amazon-web-services amazon-ec2 aws-java-sdk