java - 无法在特定区域创建 S3 存储桶

标签 java amazon-web-services amazon-s3

我正在尝试使用 AWS Java API 创建存储桶,但无法在除 US_WEST_1 之外的任何区域中创建。

import com.amazonaws.AmazonClientException;
import com.amazonaws.AmazonServiceException;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
import com.amazonaws.regions.Region;
import com.amazonaws.regions.Regions;
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3Client;
import com.amazonaws.services.s3.model.CreateBucketRequest;
import com.amazonaws.services.s3.model.GetBucketLocationRequest;

public class CreateBucket {
    private static String bucketName     = "hellobucket6434";

    public static void main(String[] args) throws IOException {
        AmazonS3 s3client = new AmazonS3Client(new ProfileCredentialsProvider());
        s3client.setRegion(Region.getRegion(Regions.AP_SOUTH_1));


            if(!(s3client.doesBucketExist(bucketName)))
            {
                // Note that CreateBucketRequest does not specify region. So bucket is 
                // created in the region specified in the client.
                s3client.createBucket(new CreateBucketRequest(
                        bucketName));
            }
            // Get location.
            String bucketLocation = s3client.getBucketLocation(new GetBucketLocationRequest(bucketName));
            System.out.println("bucket location = " + bucketLocation);

         }

下面是尝试执行时抛出的错误:

[ERROR] /C:/Users/surya/Desktop/aws-java-sample/src/main/java/com/amazonaws/samp
les/CreateBucket.java:[20,52] cannot find symbol
[ERROR]   symbol:   variable AP_SOUTH_1
[ERROR]   location: class com.amazonaws.regions.Regions

根据 documentation , AP_SOUTH_1 是有效的枚举常量。有人可以让我知道我在这里缺少什么吗?

最佳答案

该区域是在 AWS SDK for Java 1.11.11 中引入的。至少升级到此版本才能使用该区域。注意:最好始终使用最新版本。

关于java - 无法在特定区域创建 S3 存储桶,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45154270/

相关文章:

java - 在Java中,如何避免空白jtextfield输入?

amazon-web-services - 嵌套cloudformation堆栈中的资源依赖问题

python - 在 Excel 工作簿上保存多个数据帧,然后上传到 AWS S3 存储桶

java - 我可以在 FXML 中设置 BorderPane 元素的宽度吗?

java - 如何使用 View 的子级制作绘图动画,逐个绘制每个 Path 的线?

java - iReport 和外部对象

hadoop - 无需提供 key 即可在 EC2 实例之间进行 SSH

amazon-web-services - 我的 Lambda 代码在 S3 中的存储位置

iphone - 如何使用AWS iOS SDK删除侧桶中的文件夹及其所有对象?

amazon-s3 - 在 ec2 机器上安装 s3 存储桶作为网络驱动器