Как исключить зависимость из компиляции, но не из testCompile
У меня есть транзитивная зависимость компиляции от старой версии библиотеки testX. Библиотека testX не должна быть зависимостью компиляции, но зависимостью testCompile. Более того, я бы хотел зависеть от новой версии testX, а не от старой.
У меня есть частичное решение, которое устанавливает правильную версию библиотеки, но она работает путем переопределения зависимости компиляции. Но я остался с нежелательным textX в компиляции.
compile group: 'x', name: 'testX', version 'new'
Я пытался исключить библиотеку testX из компиляции и добавить явную зависимость testCompile, но исключение также удаляет зависимости из testCompile.
testCompile group: 'x', name: 'testX', version 'new'
configurations {
compile.exclude group: 'x', module: 'X'
}
1 ответ
Вы можете принудительно разрешить весь проект до определенной версии, вставив приведенную ниже команду. Имейте в виду, что это также заставит переходные зависимости разрешаться в этой версии при компиляции:
configurations.all {
resolutionStrategy {
force 'x:testX:1.1.1'
}
}