Я указал версию библиотеки в импортированном разделе dependencyManagement родительского пом. Я подтвердил, что у моей эффективной жопы есть только одно появление этой зависимости. Он находится в зависимости от раздела управления:Включает ли раздел управления зависимостью maven?
<dependencyManagement>
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>[3.18.1-GA]</version>
</dependency>
</dependencyManagement>
Это должно переопределить версию для транзитивных зависимостей в зависимости от нее. После установки (и переустановки зависимостей, чтобы соответствовать версии границ), org.apache.maven.plugins: Maven-зависимость-плагин: 2.8: дерево отпечатков:
org.javassist:javassist:jar:3.18.1-GA:compile (version selected from constraint [3.18.1-GA,3.18.1-GA])
Но (первоначально, без переустановки зависимостей) силовика жалуется неправильно версия:
[WARNING] Rule 1: org.apache.maven.plugins.enforcer.DependencyConvergence failed with message:
Failed while enforcing releasability the error(s) are [
Dependency convergence error for org.javassist:javassist:3.18.2-GA paths to dependency are:
...
И показывает, что первая транзитивная зависимость использует
org.javassist:javassist:3.18.2-GA
который исходит от зависимости, которая, в свою очередь, зависит от:
<dependencies>
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.18.2-GA</version>
</dependency>
</dependencies>
и еще использует
org.javassist:javassist:3.18.1-GA
Почему силовика несовместимым с деревом зависимостей? Что может быть неправильным? Если я использую ограничения по версиям, будут ли они соблюдаться, и я могу пропустить с помощью средства обеспечения безопасности для этой цели?
Кроме того, добавление зависимости от рассматриваемого модуля проекта ничего не меняет.