我有一個像一堆項目:您可以繼承Maven中父POM的版本嗎?
project1
project2
project3
........
project111
每個項目在罐子編譯:項目1.1.1.1.jar,.... 是否有可能在父文件夾中添加的pom.xml,所以我可以定義版本1的所有項目的時間?
我有一個像一堆項目:您可以繼承Maven中父POM的版本嗎?
project1
project2
project3
........
project111
每個項目在罐子編譯:項目1.1.1.1.jar,.... 是否有可能在父文件夾中添加的pom.xml,所以我可以定義版本1的所有項目的時間?
如果您忽略<version/>
它從父項繼承。但<parent/>
元素必須包含父母的<version/>
,因此該版本必須出現在每個POM中,但只能出現一次。
你可以這樣做:
parent pom.xml:
<project>
...
<version>${my-project-version}</version>
...
<properties>
<my-project-version>1.1.1</my-project-version>
</properties>
</project>
child pom.xml:
<project>
...
<parent>
<relativePath>../parent/pom.xml</relativePath>
<version>${my-project-version}</version>
</parent>
...
</project>
至少,這對我的作品。
使用一個屬性並引用它可以工作...除非您使用發佈插件來執行發佈,在這種情況下,它會從版本中刪除「-SNAPSHOT」,並自動將所有實例替換爲實際版本號 - 您設置的替換變量。在每個POM中設置它並使用發佈插件來標記,增加和釋放項目可能會更好。
但是,你是否用'-D'在命令行上設置了'my-project-version'? – oberlies
我沒有,如果我沒記錯的話。但它確實需要父母已經以正確的相對路徑檢出。 –
不幸的是,這個解決方案根本無法使用Maven 3.0.4 – cbaldan