Maven:未解决多模块项目依赖项(父 pom)



这是我的maven项目结构:

.
├── pom.xml
├── rep-digital-api
│   ├── pom.xml
│   └── src
└── rep-digital-common
   ├── pom.xml
   └── src

父模块./pom.xml声明为:

<groupId>net.gencat.transversal.repositori.digital</groupId>
<artifactId>rep-digital</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>rep-digital-common</module>
<module>rep-digital-api</module>
</modules>

然后,rep-digital-commonrep-digital作为父级,./rep-digital-common/pom.xml

<artifactId>rep-digital-common</artifactId>
...
<parent>
<groupId>net.gencat.transversal.repositori.digital</groupId>
<artifactId>rep-digital</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>

因此,rep-digital-apirep-digital-common为依赖项,rep-digital为父项:

<artifactId>rep-digital-api</artifactId>
<parent>
<groupId>net.gencat.transversal.repositori.digital</groupId>
<artifactId>rep-digital</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
...     
<dependency>
<groupId>net.gencat.transversal.repositori.digital</groupId>
<artifactId>rep-digital-common</artifactId>
</dependency>

为了使一切正常,我首先使用mvn clean package install安装rep-digital-common,它似乎已正确安装在我的本地存储库中:

$ ls ~/.m2/repository/net/gencat/transversal/repositori/digital/rep-digital-common/
0.0.1-SNAPSHOT/  maven-metadata-local.xml

但是,当我尝试构建rep-digital-api时出现问题。消息是:

找不到工件net.gencat.transversal.repositori.digital:rep-digital:pom:0.0.1-SNAPSHOT

看来mvn无法捡起父母绒球...

我执行的命令是:mvn clean package./rep-digital-api

有什么想法吗?

听起来您的.m2存储库中(或远程(中没有rep-digital工件。这对我来说意味着你没有cd rep-digital; mvn install.您可以通过查看内部.m2并检查您是否确实在本地安装了 rep-digital 工件来确认这一点。

安装父rep-digital将创建:

  • 人工制品.m2/repository/net.gencat.transversal.repositori.digital/rep-digital/1.0-SNAPSHOT/rep-digital-1.0-SNAPSHOT.pom
    • 这只是rep-digitalpom.xml
    • 的副本
  • 描述每个工件上次更新时间的几个maven-metadata-local.xml元数据文件

安装父项目也会安装所有子项目。

最新更新