Maven传递依赖错误版本

时间:2019-12-24 07:00:27

标签: maven spring-boot-maven-plugin

我部署了具有以下依赖项的jar A:

<dependency>
  <groupId>io.projectreactor</groupId>
  <artifactId>reactor-core</artifactId>
  <version>3.3.1.RELEASE</version>
</dependency>

我还有另一个项目B和项目C都依赖于A。因此结构如下:

B -> A -> reactor-core

C -> A -> reactor-core

问题在于项目B和项目C中的反应堆堆芯版本不同。在项目B中,其版本为2.0.8。在C中是3.3.1。 实际上,我已经在项目A中排除了2.0.8版本。我不知道为什么它仍会出现。

1 个答案:

答案 0 :(得分:2)

不使用排除。他们很难管理。

查看依赖关系树(docker build - < Dockerfile)。您将在不同位置mvn dependency:tree使用不同版本。 Maven会“调解”这棵树并选择“最近”的版本。

如果您不希望出现这种情况(实际上,您通常不希望这样做),请在reactor-core中输入正确的版本。这将覆盖所有传递版本,您将获得所需的版本。为此,您不需要