Как вычесть наборы зависимостей плюща
Моя цель - разграничить переходные зависимости проекта на несколько непересекающихся наборов:
система (файлы jar уже присутствуют в контейнере j2ee; перечислены вручную с явными фиксированными версиями)предоставляется (jar-файлы для копирования в контейнер j2ee; перечислены вручную)ухо (банки должны быть упакованы в ухо / либ, остальное)Мое текущее решение, перечисленное ниже, имеет некоторые недостатки:
должны исключить систему и предоставленные библиотеки из уха по одномуновые сторонние транзитивные депы, которые не былиТ уже явно исключены могут случайно добраться до ухаиногда приходится добавлять явноеoverride
дублирование имени и версии библиотекиЕсть ли какой-то подход, чтобы устранить эти недостатки?
Было бы неплохо иметь возможность как-то определить один conf как результат вычитания наборов зависимостей из других (с постепенным разрешением конфликтов)ear = runtime - система - предоставляется.
Может быть нотация может быть поддержана, когдаIVY-982 исправляется.
Ищете актуальное решение для применения.
Даже готов рассмотреть возможность перехода на Gradle, если у него есть решение.
Примеры исходных проектов для экспериментов можно найти вIVY-1443 крепление.