我想爲Maven的發佈插件的不同目標提供不同的配置選項。故事是這樣的:Maven:針對不同目標的不同配置
我使用Git的SCM。我想要發行版:準備插件在本地執行所有操作,釋放:執行將所有更改一次推送到遠程存儲庫。
我試着做這樣的事情:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.2.2</version>
<executions>
<execution>
<id>release-prepare</id>
<configuration>
<pushChanges>false</pushChanges>
</configuration>
<goals>
<goal>prepare</goal>
</goals>
</execution>
<execution>
<id>release-perform</id>
<configuration>
<localCheckout>true</localCheckout>
<pushChanges>true</pushChanges>
</configuration>
<goals>
<goal>perform</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.7-SNAPSHOT</version>
</dependency>
</dependencies>
</plugin>
的1.7快照版本需要localCheckout =真在所有的工作(http://jira.codehaus.org/browse/SCM- 662)如果有人想知道這件事。
隨着上述所有配置選項中提到的設置被完全忽視,但是當我簡單地指定這樣的設置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.2.2</version>
<configuration>
<localCheckout>true</localCheckout>
<pushChanges>false</pushChanges>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.7-SNAPSHOT</version>
</dependency>
</dependencies>
</plugin>
它們適用於這兩種版本:準備以及釋放:執行這是不期望的結果。
編輯:
爲了把事情說清楚:當我們使用Git供應鏈管理,我們希望讓所有領導準備釋放本地的,如果你把它也不是沒有道理的操作考慮到本地Git存儲庫無論如何都是完整的repo。但是,當我們實際發佈時,我們希望將所有更改推送到上游存儲庫,以便正確設置所有內容。
任何人都可以幫助我嗎?
你能解釋一下多一點的要求來理解你的願望嗎? – khmarbaise 2012-02-24 12:10:49