我的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?
答案 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>