Одна из зависимостей, объявленных в моем проекте, имеет транзитивную зависимость от 'com.google.guava:guava:15.0'
. Но мое приложение, развернутое на WAS/Weblogic, не работает из-за проблемы с CDI, которая исправлена в 'com.google.guava:guava:15.0:cdi1.0'
. (такая же версия, но с классификатором). Мне нужно сообщить gradle, чтобы использовать эту банку во время сборки и упаковки. Я пытаюсь понять, как мы можем преобразовать эту транзитивную зависимость с классификатором конкретной версии jar.
Пробовал следующие действия:
- Добавлена зависимость явно:
compile 'com.google.guava:guava:15.0:cdi1.0'
. Но обе банки были включены в итоговую WAR. -
Введена зависимость явно и определена стратегия разрешения:
configurations.all { resolutionStrategy { force 'com.google.guava:guava:15.0:cdi1.0' } }
Даже это не сработало.
-
Определена стратегия разрешения для проверки и изменения версии.
configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> if (details.requested.group + ":" + details.requested.name == 'com.google.guava:guava') { details.useVersion "15.0:cdi1.0" //details.useTarget "com.google.guava:guava:15.0:cdi1.0" } } }
Даже это не сработало.
Вам нужны ваши предложения по решению этой проблемы.