使用Maven Release Plugin创建Subversion Tag

使用[url=http://maven.apache.org/plugins/maven-release-plugin/]Maven Release Plugin[/url], 我们可以将项目开发中必不可少的tag, branch等源码版本控制操作集成于Maven环境之中. 以下是使用Maven Release Plugin在Subversion中创建Tag的基本步骤和注意事项.

1) Maven Release Plugin通过调用svn命令行与Subversion服务器交互,因此我们首先需要安装和配置[url=http://subversion.tigris.org/]Subversion客户端命令行[/url]程序. 当Subversion服务器需要用户名和密码进行校验时, 比较简单的方法实在svn配置文件中使用PUTTY plink.exe 或TortoisePlink.exe, 并通过 -l 和 -pw 命令行参数来定义用户名和密码.

2) 在项目pom文件中添加Subversion服务器配置, 定义Subversion中的trunk路径.

 
<scm>
<connection>
scm:svn:svn+ssh://path/trunk
</connection>
<developerConnection>
scm:svn:svn+ssh://path/trunk
</developerConnection>
<url>
http://Subversion URL
</url>
</scm>


3) 在项目pom文件中添加Maven Release Plugin配置.
 
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.0-beta-9</version>
<configuration>
<!--
<tag>${version}</tag>
-->
<tagBase>
svn+ssh://path/tags
</tagBase>
</configuration>
</plugin>
</plugins>
</build>


以上配置使用Maven Release Plugin 2.0-beta-9. tagBase定义了Subversion中的tag路径.

4) 使用以下命令行来检查各项设置是否正确

[quote]
mvn release:prepare -DdryRun=true
[/quote]


5) 使用以下命令行来创建Subversion Tag, 当此命令行运行时,Maven会提示询问下一个版本号, 并自动更新项目pom文件.

[quote]
mvn release:clean release:prepare
[/quote]

[color=brown]几个注意事项[/color]

1) 在使用Maven Release之前,必须check-in所有源码. 如果存在本地更改,Maven Release会报错并中止.

2) 项目中的所有的dependency必须是发布版本, 不能使用SNAPSHOT.

3) 上述的命令行会执行项目中的单元测试, 如果需要跳过单元测试, 可以使用以下参数

[quote]
-DpreparationGoals=clean
[/quote]

4) Maven Release在运行过程中,会修改scm中的connection设置, 如果release异常中止的话, 需要恢复原来的pom文件,才能再次运行. 因此在试验阶段, 最好准备一个本地备份.

5) 2.0-beta-9的tag设置中的变量处理存在问题 (见以上示例中注释掉的部分), 不过已经有人提供了[url=http://jira.codehaus.org/browse/MRELEASE-159]Patch[/url]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值