Amazon s3 使用AWS S3 SDK/JetS3t以编程方式(Java)访问Walrus

Amazon s3 使用AWS S3 SDK/JetS3t以编程方式(Java)访问Walrus,amazon-s3,amazon-web-services,eucalyptus,walrus,Amazon S3,Amazon Web Services,Eucalyptus,Walrus,我正在寻找使用AWS SDK for Java访问Walrus(Eucalyptus)的方法。我熟悉使用AWS SDK使用我的AWS凭据以编程方式连接到Amazon S3。然而,当我在谷歌上搜索是否可以使用AWS SDK访问Walrus时,我发现存在一些问题,唯一的解决办法是改用JetS3t 以前有人玩过JetS3t和海象吗? JetS3t是可靠的解决方案吗? 我可以用JetS3t和Walrus镜像AWS SDK中针对S3所能做的一切吗 提前感谢。您可以使用与s3相同的代码访问您的海象。但是,您

我正在寻找使用AWS SDK for Java访问Walrus(Eucalyptus)的方法。我熟悉使用AWS SDK使用我的AWS凭据以编程方式连接到Amazon S3。然而,当我在谷歌上搜索是否可以使用AWS SDK访问Walrus时,我发现存在一些问题,唯一的解决办法是改用JetS3t

以前有人玩过JetS3t和海象吗?
JetS3t是可靠的解决方案吗?
我可以用JetS3t和Walrus镜像AWS SDK中针对S3所能做的一切吗


提前感谢。

您可以使用与s3相同的代码访问您的海象。但是,您需要通过在构建中包含一个经过正确编辑的jets3t.properties文件,将jets3t指向您的walrus实例。

我知道这是一个老问题,很久以前问过,但只是想快速更新AWS JAVA SDK 1.4.0与walrus一起工作,如果您正在寻找解释如何使用AWS JAVA SDK 1.4.0对抗Walrus的示例代码,请参阅

这在Eucalyptus 3.2.2(当前稳定版本)和3.3.0(当前开发版本)上运行良好


希望这有用。

我使用了AWS SDK,它对我来说工作得非常好。下面是我为将本地驱动器上的文件上载到Walrus而编写的示例代码。希望你觉得有用

    AmazonS3 s3 = new AmazonS3Client(new AWSCredentials() {
        @Override
        public String getAWSSecretKey() {
            return "G0WewmHyE5KYaGcVWvSAQrsBsPnJb2qQOPIIc74h";
        }

        @Override
        public String getAWSAccessKeyId() {
            return "4OFCOBFGPGVINNR7H6TMG";
        }
    });
    s3.setEndpoint("http://10.14.99.97:8773/services/Walrus/");
    byte[] bytes = convertToByteArray("/home/harshit/Desktop/poster.jpg"); // function written by me for extracting byte stream out of a local file
    ByteArrayInputStream is = new ByteArrayInputStream(bytes);
    PutObjectRequest request = new PutObjectRequest("skg", "foo.jpg", is, metaData);
    s3.putObject(request);