Как исключить транзитивную зависимость в gradle
How to exclude transitive dependencies from gradle
Иногда возникает ситуация, когда некоторые зависимости подтягиваются транзитивно из других библиотек в gradle. Бывают случаи, когда версии этих библиотек отличаются и это приводит к некоторым проблемам.
Как же можно исключить эти транзитивные зависимости из файла gradle.build?
Рассмотрим пример.
dependencies { implementation("com.super.lib:awesome-lib:1.16"){ exclude group: 'com.another.lib', module: "regular-lib" } }
После того, как добавлена необходимая вам в проекте зависимость, но содержащая при этом совершенно ненужную зависимость внутри себя (в примере выше это implementation(«com.super.lib:awesome-lib:1.16»)), следует добавить инструкцию «exclude group», в которой указать пакет (группу) и название модуля. Опять же в примере выше группа исключаемой зависимости называется «com.another.lib», а модуль «regular-lib».
После пересборки проекта данная зависимость не будет подтягиваться транзитивно из импортируемой родительской зависимости.
Добавить комментарий
Для отправки комментария вам необходимо авторизоваться.