[英]Maven: Multi module project dependecies not resolved (parent pom)
This is my maven project structure: 这是我的Maven项目结构:
.
├── pom.xml
├── rep-digital-api
│ ├── pom.xml
│ └── src
└── rep-digital-common
├── pom.xml
└── src
Parent ./pom.xml
modules declaration is: 父
./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>
Then, rep-digital-common
has rep-digital
as parent, ./rep-digital-common/pom.xml
: 然后,
rep-digital-common
将rep-digital
作为父级,./ rep-digital-common
./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>
So, rep-digital-api
has rep-digital-common
as dependency and rep-digital
as parent: 因此,
rep-digital-api
将rep-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>
In order to make everything works, I first install rep-digital-common
using mvn clean package install
and it seems to be installed correctly on my local repository: 为了使一切正常,我首先使用
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
However, the problem appears when I'm trying to build rep-digital-api
. 但是,当我尝试构建
rep-digital-api
时,会出现问题。 The message is: 消息是:
Could not find artifact net.gencat.transversal.repositori.digital:rep-digital:pom:0.0.1-SNAPSHOT
找不到工件net.gencat.transversal.repositori.digital:rep-digital:pom:0.0.1-SNAPSHOT
It seems mvn
is not able to pick up parent pom... 似乎
mvn
无法接听父pom ...
The command I execute is: mvn clean package
in ./rep-digital-api
我执行的命令是:
./rep-digital-api
mvn clean package
Any ideas? 有任何想法吗?
Sounds like there is no rep-digital
artefact in your .m2
repository (or remotely). 听起来您的
.m2
存储库(或远程)中没有rep-digital
伪像。 This implies to me that you did not cd rep-digital; mvn install
对我而言,这意味着您未使用
cd rep-digital; mvn install
cd rep-digital; mvn install
. cd rep-digital; mvn install
。 You can confirm this by looking inside .m2
and checking whether you do indeed have the rep-digital artefact installed locally. 您可以通过在
.m2
内部查看并检查是否确实在本地安装了rep-digital artefact来确认这一点。
Installing the parent rep-digital
will create: 安装父级
rep-digital
将创建:
.m2/repository/net.gencat.transversal.repositori.digital/rep-digital/1.0-SNAPSHOT/rep-digital-1.0-SNAPSHOT.pom
.m2/repository/net.gencat.transversal.repositori.digital/rep-digital/1.0-SNAPSHOT/rep-digital-1.0-SNAPSHOT.pom
rep-digital
's pom.xml
rep-digital
的pom.xml
的副本 maven-metadata-local.xml
metadata files describing when each artefact was last updated maven-metadata-local.xml
元数据文件,它们描述了每个maven-metadata-local.xml
最新更新时间 Installing the parent artefact will also install all the child artefacts. 安装父文物还将安装所有子文物。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.