Maven项目的多级继承

时间:2018-02-13 10:24:04

标签: maven pom.xml

我有一个Maven项目(让我们称之为项目B ),其pom.xml中包含以下内容:

<modelVersion>4.0.0</modelVersion>

<artifactId>ui-tests</artifactId>
<name>UI tests</name>

<parent>
    <groupId>net.mycompany</groupId>
    <artifactId>root</artifactId>
    <version>1.0-SNAPSHOT</version>
</parent>

这个Maven项目注定要创建一个用于运行某些测试的JAR。如您所见,它继承自另一个Maven项目(让我们称之为项目A )。

我想要做的是创建一个项目C ,它将继承项目B(项目A→项目B→项目C)。这是为了为某些应该单独运行的测试生成单独的JAR。

但是,我不确定如何编写相应的pom.xml

<modelVersion>4.0.0</modelVersion>

<artifactId>isolated</artifactId>
<name>Isolated UI tests</name>

<parent>
    <groupId><!-- ??? --></groupId>
    <artifactId>ui-tests</artifactId>
    <version>1.0-SNAPSHOT</version>
</parent>

我应该在groupId标记中添加什么内容?另外,在artifactId标记中,我应该root(来自项目A)还是ui-tests(来自项目B)?

1 个答案:

答案 0 :(得分:1)

您的项目B的坐标为:

<groupId>net.mycompany</groupId>
<artifactId>ui-tests</artifactId>
<version>1.0-SNAPSHOT</version>

您自己指定了artifactId并从项目A继承了其他坐标。因此,当您想将项目B用作父pom时,您需要准确指定这三个坐标。