我正在尋找一種方法來設置多個配置文件,其中我想要設置爲默認(運行只是mvn clean install
應該選擇該配置文件)。我對任何使用activeByDefault的解決方案都不感興趣,因爲它阻止我在另一個模塊中創建單獨的配置文件,並在默認配置文件的同時使用它們。maven配置文件激活與默認配置文件沒有標籤「activeByDefault」
目前我使用的財產的做法,看起來是這樣的:
<profiles>
<profile>
<id>prof1</id>
<activation>
<property>
<name>!myprop</name>
</property>
</activation>
</profile>
<profile>
<id>prof2</id>
<activation>
<property>
<name>myprop</name>
<value>prof2</value>
</property>
</activation>
</profile>
<profile>
<id>prof3</id>
<activation>
<property>
<name>myprop</name>
<value>prof3</value>
</property>
</activation>
</profile>
</profiles>
這意味着我必須編譯我的項目,mvn clean install -Dmyprop=prof3
如果我要選擇prof3而不是小弟弟震(這是默認通過不設置任何財產)。
但是我想達到同樣的效果,但用-Pprofilename
編譯我的項目,而不是設置屬性。我試圖在<properties>
標籤下的每個配置文件中添加屬性,但似乎默認總是運行。我讀了pom屬性不可用於激活配置文件。
有沒有解決這個問題的方法?比如有一個設置或屬性文件(我不想每次編譯時都改變它),從中我可以獲得該屬性並實現使用-PprofileName
進行編譯的目標?
請參閱編輯的問題,我不希望使用activeByDefault。 –