为不同的项目创建聚合 POM
Create aggregate POM for different projects
我想为不同的模块创建一个聚合 pom,以便它可以作为一个大型 maven 项目来处理。
ModuleA:Web 应用程序,有一个 pom.xml 父级设置为 Spring boot
模块 B:简单 java 应用程序(与模块 A 的依赖项不同)
Project/
ModuleA/
pom.xml <-- parent is set to spring
ModuleB/
pom.xml <-- no parent
pom.xml <-- aggregate pom to create
这是我尝试过的聚合 pom:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>group</groupId>
<artifactId>Project</artifactId>
<version>1</version>
<packaging>pom</packaging>
<name>Project</name>
<modules>
<module>ModuleA</module>
<module>ModuleB</module>
</modules>
</project>
问题是当我尝试 运行 项目级别的 maven 命令时,我收到警告:
[WARNING] Some problems were encountered while building the effective model for group:ModuleA:war:0.0.1
[WARNING] 'parent.relativePath' of POM group:ModuleA:0.0.1 (C:\Project\ModuleA\pom.xml) points at group:Project instead of org.springframework.boot:spring-boot-starter-parent, please verify your project structure @ group:ModuleA:0.0.1, C:\Project\ModuleA\pom.xml
当我不想从聚合 pom 继承任何东西时,这真的是个问题吗?
如 and 所述,取消每个 project/module pom.xml
父元素中的 relativePath 设置,因为您的主项目只是用于聚合项目(而不是被引用的父元素)模块)
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.6.RELEASE</version>
<relativePath/> <=========
</parent>
我想为不同的模块创建一个聚合 pom,以便它可以作为一个大型 maven 项目来处理。
ModuleA:Web 应用程序,有一个 pom.xml 父级设置为 Spring boot
模块 B:简单 java 应用程序(与模块 A 的依赖项不同)
Project/
ModuleA/
pom.xml <-- parent is set to spring
ModuleB/
pom.xml <-- no parent
pom.xml <-- aggregate pom to create
这是我尝试过的聚合 pom:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>group</groupId>
<artifactId>Project</artifactId>
<version>1</version>
<packaging>pom</packaging>
<name>Project</name>
<modules>
<module>ModuleA</module>
<module>ModuleB</module>
</modules>
</project>
问题是当我尝试 运行 项目级别的 maven 命令时,我收到警告:
[WARNING] Some problems were encountered while building the effective model for group:ModuleA:war:0.0.1
[WARNING] 'parent.relativePath' of POM group:ModuleA:0.0.1 (C:\Project\ModuleA\pom.xml) points at group:Project instead of org.springframework.boot:spring-boot-starter-parent, please verify your project structure @ group:ModuleA:0.0.1, C:\Project\ModuleA\pom.xml
当我不想从聚合 pom 继承任何东西时,这真的是个问题吗?
如 pom.xml
父元素中的 relativePath 设置,因为您的主项目只是用于聚合项目(而不是被引用的父元素)模块)
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.6.RELEASE</version>
<relativePath/> <=========
</parent>