我正在將項目遷移到Maven,因爲我們通常會使用我們的Perforce SCM存儲庫中的最新更改編號來引用我們的構建,所以我希望能夠提取此信息將Perforce scm配置到maven項目中以獲取最新的更改列表
我想通過以下資源配置Maven插件SCM:
- http://maven.apache.org/scm/maven-scm-plugin/usage.html仿製使用
- http://www.perforce.com/perforce/doc.current/manuals/p4maven/index.html
首先,我不知道如何使它發揮作用,因此,如果任何人有一個完全工作的例子,我會很樂意,就在我身邊我已經在我的POM加試:
<scm>
<connection>
scm:perforce:localhost:1666://depot/
<my_project>
/
<version>
</connection>
<developerConnection>
scm:perforce:localhost:1666:/depot/
<my_project>
/
<version>
</developerConnection>
<url>http://somerepository.com/view.cvs</url>
</scm>
...
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.6</version>
<dependencies>
<!-- P4Maven -->
<dependency>
<groupId>com.perforce</groupId>
<artifactId>p4maven</artifactId>
<version>[2011,2012)</version>
</dependency>
</dependencies>
<configuration>
<connectionType>//depot/proto/kernel/kernel/04.00/maven2</connectionType>
<username>my local username</username>
<password>xxxxxx</password>
<includes>**</includes>
</configuration>
</plugin>
</plugins>
這是導致我:
[INFO] --- maven-scm-plugin:1.6:checkout (default-cli) @ kernel ---
mars 27, 2012 9:54:08 AM org.sonatype.guice.bean.reflect.Logs$JULSink warn
Avertissement: Error injecting: org.apache.maven.scm.provider.svn.svnexe.SvnExeScmProvider
java.lang.NoClassDefFoundError: org/apache/maven/scm/command/info/InfoScmResult
肯定忘了什麼事,我會再次嘗試閱讀說明書,看看我錯過了,但如果有人知道...
不管怎樣,我的問題是相當:是它我是否嘗試它? 我從scm插件的可用操作中看不到任何有助於獲取最新更改信息並將其集成到參考內部版本號的任何內容。我應該爲此開發自己的插件嗎?
在此先感謝。
感謝您的回答,我會試一試,然後再回來 – Gurvan 2012-04-18 10:35:14