如何使现有的maven父项目,新创建的maven项目的子项目

How to make existing maven parent project, child of newly created maven project

我有现有的 Maven 项目(命名为 projectB),它是其他项目(projectC 和 projectD)的 parent,我想要使 projectB 作为新创建的 maven 项目(命名为 projectA)的子项目。这是目录结构:

projectA
  -> pom.xml
projectB
  -> pom.xml
projectC
  -> pom.xml
projectD
  -> pom.xml

这就是我的 projectApom.xml 的样子:

<modules>
    <module>projectB</module>
</modules>

这是我的 pom.xmlprojectB 看起来:

    <parent>
        <groupId>(groupId of projectA)</groupId>
        <artifactId>projectA</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>
    <modules>
        <module>../projectC</module>
        <module>../projectD</module>
    </modules>

但是当我在 projectA 上执行 make clean 时,它给我错误:

Child module C:\Users\projectB of C:\Users\projectA\pom.xml does not exist

我搜索了现有的解决方案,但 none 帮助我解决了问题。

项目 B pom.xml 中的以下配置不正确

  <parent>
    <groupId>(groupId of projectB)</groupId>
    <artifactId>projectB</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</parent>

在父部分中,您必须指定项目 A 而不是 B。类似下面的内容应该有所帮助

  <parent>
    <groupId>(groupId of projectA)</groupId>
    <artifactId>projectA</artifactId>
    <version>(Project A version)</version>
</parent>

由于你的所有项目都在同一级别,你应该:

在项目 A 中:

<modules>
    <module>../projectB</module>
</modules>

在项目 B 中:

<parent>
    ...
    <relativePath>../projectA/pom.xml</relativePath>
</parent>