我有两个不同的项目。Project_1是一个maven多模块项目。Project_2依赖于Project_2的一些模块,我在Project_1的父POM中声明了一个version属性,并在子POM中引用,如下所示。
Project_1父POM
<groupid>x</groupid>
<artifactid>y</artifactid>
<version>${app.version}</version>
<properties>
<app.version>1.0.0</app.version>
</properties>Project_1子POM
<parent>
<groupid>x</groupid>
<artifactid>y</artifactid>
<version>${app.version}</version>
</parent>
<artifactid>y1</artifactid>Project_2 POM
<dependency>
<groupid>x</groupid>
<artifactid>y</artifactid>
<groupid>1.0.0</groupid>
</dependency>我已经在本地存储库中使用"mvn clean install“安装了Project_1,但问题是Project_1和它的模块pom以及安装在本地存储库中的依赖项的版本是${app.version}。因此,如果我将Project_1或其模块作为实际版本1.0.0的Project_2中的依赖项引用,则会抛出错误,即它找不到版本1.0.0
有什么办法可以解决这个问题吗?在安装Project_1的过程中,我喜欢在本地存储库中使用actual覆盖键{app.version}。
发布于 2020-03-22 09:42:53
这也可以通过flatten-maven-plugin来实现。在父版本包含的情况下,flatten-maven-plugin可以与xml-maven-plugin一起使用。
https://stackoverflow.com/questions/60774456
复制相似问题