我有一个包含数十个依赖项和模块的复杂Spring项目。我注意到其中一些可能被spring-boot-starters
取代。
然而,当我用主父pom中的starters替换一些依赖项时,我会在子模块中得到错误。
下面是一个例子:
亲本POM
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-activemq</artifactId>
<version>2.0.5.RELEASE</version>
</dependency>
</dependencies>
</dependencyManagement>
模块POM
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jms</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
根据maven存储库,spring-boot-starter-activemq
依赖于spring-boot-starter
和spring-jms
等。
这些依赖关系是否可用于模块?
有办法像这样使用依赖关系吗?我会让pom文件更短。
或者这样做不是个好主意,我应该定义我将在dependencyManagement中使用的所有依赖关系吗?
发布于 2019-04-04 09:22:17
在POM中,您应该拥有直接在代码中使用的所有依赖项。对于你积极使用的东西,不要依赖传递性的解决方案。
您的构造无法工作,因为您没有管理您的spring-jsm
和spring-boot-starter
中的dependencyManagement。作为托管依赖项的依赖项没有帮助。
https://stackoverflow.com/questions/55498120
复制相似问题