gpt4 book ai didi

java - 如何用 Java 模拟 AWS SDK 2 (S3)

转载 作者:太空宇宙 更新时间:2023-11-04 09:45:03 25 4
gpt4 key购买 nike

所以我想模拟AWS SDK 2.x(仅限S3服务),以便在没有真正的AWS的情况下测试将文件上传和下载到存储桶。我正在寻找 Java 实现。

我发现了很多实现的东西(Adobe S3Mock ...等),但它们都使用AWS SDK 1.x。

最佳答案

您不应自行重新实现 S3 API。相反,请使用现有工具之一,例如 localstack , MinIO , OpenStack Swift和别的。它们都提供与 S3 兼容的 API(尽管可能存在一些差异)。最好的测试是 localstack,恕我直言。它可以作为 Docker image 提供。 ,因此您可以在本地或 CI 管道中使用它。

不是你问题的 Java 部分。如果您是 JUnit 5 的幸运用户,我建议您使用 aws-junit5 ,一组适用于 AWS 的 JUnit 5 扩展。是的,我是它的作者。这些扩展可用于注入(inject)由 localstack 等工具提供的 AWS 服务的客户端(实际上,支持任何与 AWS 兼容的 API,包括真正的 AWS 本身)。支持 AWS Java SDK v 2.x 和 v 1.x。您可以使用 aws-junit5 注入(inject) S3、DynamoDB、Kinesis、SES、SNS 和 SQS 的客户端。

user guide 中了解更多信息,它甚至有一个关于 CI configuration with GitHub 的部分.

关于java - 如何用 Java 模拟 AWS SDK 2 (S3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55511235/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com