при загрузке jar зависимостей, как заставить загружаться его зависимости - PullRequest
0 голосов
/ 07 июня 2019

Я построил две банки и положил их в Артефакторию. Один из jar зависит от другого (зависимость находится в его файле build.gradle). Когда я загружаю основной jar-файл в качестве зависимости моего основного приложения, зависимый jar-файл не загружается. Единственный способ получить оба - поместить два оператора компиляции в build.gradle. Как сделать так, чтобы зависимая банка также загружалась?

Основной файл jar - user-cache.jar и зависит от blue-redis.jar. Build.gradle в приложении, которое использует мой основной jar-файл, использует следующий оператор компиляции:

compile(group: 'etd.user-cache', name: 'user-cache', version: '1.0.2', ext: '12.SNAPSHOT.jar')

В build.gradle для пользовательского кэша есть это:

    compile(group: 'etd.blue-redis', name: 'blue-redis', version: '1.0.1', ext: '4.SNAPSHOT.jar')

Когда я создаю свое приложение, оно получает только user-cache.jar. Это делает необходимым поместить оба оператора компиляции в build.jar моего приложения

Что мне нужно сделать, чтобы файл blue-redis.jar также был загружен без использования оператора компиляции?

1 Ответ

1 голос
/ 07 июня 2019

Я предполагаю, что вы используете репозиторий maven в Artifactory. Когда gradle выполняет разрешение зависимостей , он пытается загрузить POM-файл и проверить наличие транзитивных зависимостей, а также родительских poms, которые могут перечислять дополнительные зависимости.

Чтобы получить желаемое поведение, при публикации основного jar-файла в Artifactory необходимо включить в его файл POM зависимость от другого JAR-файла.

...