我的Maven項目是多模塊的,通常版本號不會同步。例如,我可以擁有一個版本爲1.2.3-SNAPSHOT的主POM和一個版本爲3.4.5-SNAPSHOT的子模塊(不保持同步的主要原因是模塊通常從一個項目移動到另一個,必須保持其版本)。Maven:從子模塊中檢索主模塊版本
現在我想把主項目版本放在包含main(或webapp等)的模塊的資源中,當然這是一個子模塊。這意味着我需要從一個子模塊訪問主POM版本。
另外請注意,我的項目有3或4個級別;因此,主POM是子模塊的祖父,而不僅僅是父母。
儘管有一些Maven的經驗,包括先進的東西,迄今爲止,我一直無法解決這個問題。
謝謝。
太明顯的答案是讓大師級POM將大師級版本放在由子子模塊讀取的屬性中。我錯過了什麼? –
...子模塊從大師級繼承的事實。它們繼承了屬性的定義而不是值,因此它們用本身的版本在本地重新評估$ {project.version}。 –
啊,也許這是有效的。我試圖建議的是定義一個屬性,稱爲「grand-master.version」,其中的_literal_版本_redundantly_在特級大師中。沒有本地碰撞。 –