Maven强制依赖项使用较低版本的Spring Boot

时间:2019-07-18 11:55:22

标签: java maven spring-boot

我的Spring Boot应用程序的spring boot父版本是1.5。有一个自定义依赖项,其春季启动版本为2.0。我想强制此依赖项在主Spring Boot应用程序中使用spring boot 1.5。
鉴于此:依赖关系的版本无法降级,因为它正在被其他应用程序使用,并且无法将Spring Boot主应用程序从1.5升级到2.0。 SB 1.5和2.0的依赖性都很好。还添加了排除标签以排除springboot 1.5。但是也没有成功。

请让我知道如何在运行时强制依赖项使用1.5?

2 个答案:

答案 0 :(得分:2)

您不能更改依赖项的父POM。

但是,您可以覆盖在依赖项的父POM中定义的依赖项。可以使用与覆盖其他传​​递依赖项(<dependencyManagement>)相同的机制来完成此操作。

由于依赖项是依赖项的父POM贡献给您的构建的唯一方法,因此您无需更改它。

答案 1 :(得分:-1)

您可以使用规则Dependency Convergence在整个项目中enforce保持一致。

<plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-enforcer-plugin</artifactId>
     <version>1.3.1</version>
     <executions>
        <execution>
           <id>enforce</id>
           <configuration>
              <rules>
                 <DependencyConvergence/>
              </rules>
           </configuration>
           <goals>
              <goal>enforce</goal>
           </goals>
        </execution>
     </executions>
  </plugin>