Gradle, Как скачать ZIP-файл с S3

Я планирую написать пользовательскую задачу, как показано ниже, в gradle, чтобы загрузить .zip с S3.

task downloadZipFromS3(type: com.amazonaws.gradle.s3.Download) {
  bucket = "${s3.bucket}"
  key = "${s3.key}"
  file = file("your-local-file.zip")
}

Но не получить какой-либо конкретный плагин Gradle для загрузки zip. Есть ли какой-либо «стандартный» плагин или любой другой способ загрузить файлы .zip с S3 и сохранить в каталоге моего проекта?

используйте библиотеку Java HTTP, вы можете импортировать ее в свой сценарий Gradle

olfek 20.04.2023 14:28

Я использовал github.com/michel-kraemer/gradle-download-task

injecteer 20.04.2023 14:56

не могли бы вы помочь мне с ответом, чтобы реализовать его с помощью AWS_ACCESS_KEY/SECRETE_KEY для аутентификации S3? ТИА

Swapnil Kotwal 20.04.2023 15:23
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
3
66
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Хорошо, я получил это, используя традиционную загрузку плагина S3 maven repo.

Я добавил zip в свой путь к классам Gradle как

testLibs("com.myproject:myproject-test-lib:$TEST_LIB_VERSION")

И из пути к классам извлек кешированный zip в каталог проекта как

/**
 * Extract the 'test-libs' from classpath to project directory.
 */
task unzipTestLibs(type: Copy) {
    from zipTree(configurations.testLibs.find { it.name.contains('myproject-test-lib') })
        .matching { include '**/*.jar' }
    into "$projectDir/libs/test-lib"
}

наконец, вызвал эту задачу на

compileJava.dependsOn(unzipTestLibs)

Другие вопросы по теме