Есть ли способ использовать пакет OSGI в качестве зависимости maven, не помещая все пакеты из него в путь к классам, который он даже не экспортирует?
Справочная информация о вопросе: Мы только что добавили *Пакет 1003 * org.apache.sling.xss является зависимостью maven в нашем проекте.Как вы можете видеть в pom.xml , он просто экспортирует пакет org.apache.sling.xss, но встраивает различные зависимости прямо в jar как Private-Package .В то время как OSGI скрывает это от других пакетов, Maven - нет.Таким образом, мы получаем коллизии: org.apache.sling.xss встраивает, например, версию 1.7.0 commons-beanutils, которая несовместима с более новой версией commons-beanutils, которую мы использовали, так что теперь мы получаем ошибки компиляции.
Есть ли какое-то хорошее решение для этого - как с нашей точки зрения, так и с точки зрения сопровождающих пакета org.apache.sling.xss?В идеале вы должны получить только экспортированный пакет org.apache.sling.xss в classpath, если будете использовать этот пакет.Поэтому, возможно, хорошим решением было бы, если бы org.apache.sling.xss предоставил отдельный jar API, содержащий только этот класс?Есть ли стандартный способ сделать это или другое решение?Можем ли мы как-то сказать maven просто включить этот пакет в classpath?(Я знаю, что у maven есть исключение зависимостей , но здесь это не поможет, поскольку проблемным является не транзитивная зависимость sling.xss, а фактически включенная в jar org.apache.sling.xss.)