Как исключить конкретный пакет зависимости jar в проекте Grails? - PullRequest
3 голосов
/ 24 мая 2011

В моем проекте Grails я использовал библиотеку A. Одна из зависимостей A - B. В B jar есть пакет (с именем C), который я хочу исключить из моего проекта (поскольку он дублирует существующий пакет в JDK и вызывает ошибка при запуске приложения). Но я не знаю правильный синтаксис для этого. Я попробовал приведенные ниже коды, но он не работает

dependencies {  
     runtime ('A-library') {  
            excludes(<what-I-should-write-here>)  
     }
}

Не могли бы вы помочь мне в этом? Большое вам спасибо

Ответы [ 2 ]

5 голосов
/ 24 мая 2011

Вы можете только включить / исключить B полностью, вы не можете включить / исключить определенные пакеты B. Для достижения вашей цели вам нужно будет найти (или создать) модифицированную версию B, в которой удалены дубликаты пакетов.Затем измените BuildConfig.groovy на:

dependencies {  
     runtime ('A-library') {  
            excludes('B-library')  
     }
     runtime 'B-library-with-duplicate-packages-excluded'
}
4 голосов
/ 24 мая 2011

Это не так, как это работает.Управление зависимостями работает с файлами JAR (и плагинами), а не с классами или пакетами.Если вам нужно исключить класс или пакет, вам нужно указать другую версию, которая не включает их, или при необходимости пересобрать jar самостоятельно, удалив эти классы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...