You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gradle从S3下载.zip文件:求标准插件或实现方法

在Gradle中从S3下载ZIP文件的替代方案

如果你找不到com.amazonaws.gradle.s3.Download对应的插件,可以用以下两种可靠方式实现需求:

1. 直接基于AWS SDK编写自定义任务

这种方式无需依赖特定Gradle插件,直接调用AWS S3 SDK完成下载,灵活性和稳定性更高。

步骤:

首先在构建脚本中添加AWS SDK依赖,然后实现下载逻辑:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        // 引入AWS S3 SDK及区域管理依赖,可替换为最新版本
        classpath 'software.amazon.awssdk:s3:2.20.157'
        classpath 'software.amazon.awssdk:regions:2.20.157'
    }
}

task downloadZipFromS3 {
    doLast {
        // 初始化S3客户端,替换为你的桶所在区域
        def s3Client = software.amazon.awssdk.services.s3.S3Client.builder()
                .region(software.amazon.awssdk.regions.Region.US_EAST_1)
                .build()

        def bucketName = "${s3.bucket}"
        def objectKey = "${s3.key}"
        // 指定保存到项目目录下的目标文件
        def localTargetFile = file("${projectDir}/your-local-file.zip")

        try {
            // 执行下载
            s3Client.getObject(
                    software.amazon.awssdk.services.s3.model.GetObjectRequest.builder()
                            .bucket(bucketName)
                            .key(objectKey)
                            .build(),
                    localTargetFile.toPath()
            )
            println "ZIP文件已成功下载至: ${localTargetFile.absolutePath}"
        } finally {
            // 确保客户端关闭
            s3Client.close()
        }
    }
}

凭证配置

AWS SDK会自动从以下位置加载凭证,按需配置即可:

  • 系统环境变量(AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY)
  • 用户主目录下的~/.aws/credentials文件
  • 运行环境的IAM角色(如果在EC2/EKS等AWS服务中运行)

2. 使用维护活跃的第三方Gradle插件

如果偏好插件方式,可以使用io.micronaut.aws插件(该插件基于AWS SDK v2,维护活跃):

配置插件及任务:

plugins {
    id 'io.micronaut.aws' version '4.3.0'
}

task downloadZipFromS3(type: io.micronaut.gradle.aws.s3.S3Download) {
    bucket = "${s3.bucket}"
    key = "${s3.key}"
    file = file("${projectDir}/your-local-file.zip")
    region = "us-east-1" // 替换为你的桶区域
}

注意事项

确保插件版本与你的Gradle版本兼容,可从插件仓库确认最新适配版本。

内容的提问来源于stack exchange,提问作者Swapnil Kotwal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 13:45:12