我有一个定义属性的父项目,例如:
<properties>
<myproject-version>1.0</myproject-version>
</properties>
在“儿童”项目中,我使用
<parent>
<groupId>com.home</groupId>
<artifactId>my-modules</artifactId>
<version>${myproject-version}</version>
</parent>
一切都很好,但是当Maven在存储库中安装jar时,它会创建像
这样的pom<parent>
<groupId>com.home</groupId>
<artifactId>my-modules</artifactId>
<version>${myproject-version}</version>
</parent>
我需要将my-version的值替换为1.0
<parent>
<groupId>com.home</groupId>
<artifactId>my-modules</artifactId>
<version>1.0</version>
</parent>
有没有办法做到这一点?我需要1.0,因为当其他项目使用我的项目作为依赖项时会出现一些编译问题。 (他们寻找版本$ {myproject-version}而不是'1.0'
答案 0 :(得分:1)
实际上,我很惊讶地看到这个甚至有效。必须在父标记中指定版本 (否则无法知道从存储库中提取哪个版本)但该版本应不根据数据定义在父pom中定义,否则会出现一个明显的问题:需要父pom来确定需要哪个父pom。
所以我认为没有办法做你想做的事情,说实话,我认为这是一个坏主意。