我有一个多模块Maven项目,具有如下的结构:Maven的 - 依靠多模块聚合项目
projectA-parent
- module-1
- module-2
而且我还有一个项目,我想在所有的模块,使projectA-parent
作为运行时依赖项(这是一个Spring应用程序,并且projectA-parent
中的每个模块都包含我希望能够自动装配的Spring服务)。
我想什么做的是一样的东西
<dependency>
<groupId>projectA-group</groupId>
<artifactId>projectA-parent</artifactId>
<scope>runtime</scope>
</dependency>
所以,如果我添加其他模块projectA-parent
它会自动带来了作为一个运行时的依赖(即,我不希望有添加每个新模块作为我的Spring应用程序中的依赖项)。这样的事情可能吗?
问题是模块不是'projectA-parent'的依赖关系,而是子模块。我当前的解决方案(可能是最好的/唯一的选择)是有一个“BOM”模块,将所有其他模块列为依赖项,然后将此BOM作为类型导入:pom/scope:import dependency,如同在答案中一样。依赖关系在BOM pom.xml中标记为范围:运行时。 – bobsyouruncle