Мотивация:
У меня есть небольшой набор довольно исключительных зависимостей, которые я хотел бы представить в моей сборке Gradle. Эти зависимости огромны и не обязательно являются частью программного обеспечения, которое я создаю. Они являются своего рода дополнительным компонентом и в настоящее время обрабатываются полностью вручную.
Что я хотел бы сделать, это ввести новую конфигурацию в мою сборку Gradle, определить их так, как я бы определил любую другую зависимость, и предоставить одну задачу это устанавливает эти артефакты в заранее определенное место и расширяет еще одну задачу, чтобы включить идентификатор версии в какой-то перечень материалов.
Я вполне способен сделать все это. Проблема возникает, когда я пытаюсь разрешить зависимость, которая загружает эту зависимость в кэш града, прежде чем она сделает что-либо еще.
Поскольку эти артефакты огромны (очень специфично для домена c, раскрыть не могу, считайте несколько гигабайт изображений), загрузка в кеш занимает некоторое время, хотя это не добавляет никакой ценности ни одному из моих двух вариантов использования.
- Для ведомости материалов мне нужно только разрешить зависимость, не загружая ее 1
- Для задачи установки мне нужно решить и загрузить ее в указанное c местоположение . Наличие второй копии в кэше только добавляет нежелательную сложность.
Я также боюсь, что кто-то может случайно ссылаться на зависимости каким-либо образом, что разрешение зависимости (и загрузка c automati) запускается во время настройки фаза, которая была бы большой проблемой.
Вопрос:
Есть ли способ создать конфигурацию в Gradle, чтобы Gradle разрешал артефакты из моих репозиториев, но вместо автоматической загрузки ее в Кэширование gradle на этапе настройки позволяет мне загружать артефакты в определенную позицию c вне кеша gradle как часть задачи?
1 , поскольку я использую абсолютный версии, которые в основном сводятся к проверке, доступны ли они в хранилище, хотя я мог бы обойтись без