我最近开始尝试使用 Amazon S3 存储解决方案。我正在使用 Java SDK,只是做一些基本的事情,例如存储/检索文件。这没有任何问题。不过,我有点好奇,这让我很困惑。
对于AmazonS3.putObject(String,String,File)方法,javadoc 暗示调用可以抛出 AmazonClientException 或 AmazonServiceException。例如
//Note: logger is a log4j logger, myBucketName is a String, and s3 is an AmazonS3Client object.
//All are declared and initialized prior to this point.
public void storeToS3(String key, File f) {
logger.debug("Trying to store " + f.getAbsolutePath());
s3.putObject(myBucketName, key, f);
}
我使用 Eclipse 作为 IDE,并且我预计它会开始抛出错误,因为我还没有处理 putObject 调用的潜在异常。我不认为这是因为我将这些错误关闭(即告诉 Eclipse 不要标记它们),因为对于更多“正常”异常(IOException、FileNotFoundException 等),我会遇到类似的错误
我只是在 eclipse 中的构建路径/类路径上使用 awe-java-sdk-1.9.3.jar,并且没有安装适用于 S3 的 Eclipse 特定插件。
有人知道为什么 Eclipse 没有标记这个吗?我正在使用 Eclipse Juno Service Release 2。这不是什么大不了的事,更多的是出于好奇,但我担心我是否可能因此而错过其他异常。我之前已经通过“Google”进行了一些挖掘,但没有得出任何结果。
最佳答案
AmazonClientException
和 AmazonServiceException
均派生自 RuntimeException 。
来自 RuntimeException
的 Javadoc:
A method is not required to declare in its throws clause any subclasses of RuntimeException that might be thrown during the execution of the method but not caught.
关于java - Amazon S3 sdk 和 Eclipse - Eclipse 无法识别异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26759400/