我有一个包含数十个依赖项和模块的复杂Spring项目。我注意到其中有些可能会被spring-boot-starters
取代。
但是,当我用主,父pom中的启动程序替换某些依赖项时,我在子模块中遇到了错误。
这是一个例子:
PARENT 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中使用的所有依赖项?
答案 0 :(得分:1)
在POM中,应该具有直接在代码中使用的所有依赖项。请勿主动使用传递解析。
您的构造无法正常工作,因为您没有在dependencyManagement中管理spring-jsm
和spring-boot-starter
。成为托管依赖项的依赖项没有帮助。