Исключённые зависимости в Maven — это транзитивные зависимости, которые проект явно удаляет из своего дерева зависимостей. Когда проект объявляет, что не хочет наследовать зависимость, которая обычно включалась бы через другую зависимость, эта зависимость становится исключённой.
Когда Проект A зависит от Проекта B, а Проект B зависит от Проекта C, Проект A обычно наследует Проект C как транзитивную зависимость. Однако разработчики Проекта A могут явно исключить Проект C, чтобы предотвратить его добавление в classpath.
Ты исключаешь зависимость с помощью элемента <exclusion> внутри конфигурации <dependency> в файле pom.xml:
<dependency>
<groupId>com.example</groupId>
<artifactId>project-b</artifactId>
<version>1.0</version>
<exclusions>
<exclusion>
<groupId>com.example</groupId>
<artifactId>project-c</artifactId>
</exclusion>
</exclusions>
</dependency>
Исключённые зависимости дают разработчикам тонкий контроль над деревом зависимостей проекта, позволяя выборочно удалять транзитивные зависимости, которые не нужны или вызывают конфликты.
Исключённые зависимости — это прямые зависимости, которые проект явно объявляет, но выбирает, чтобы не компилировать их вместе с собой.
Новый — ещё не проверен сообществом
Вы