2011-09-06 69 views
1

我想知道是否可以使用“基于Ant的版本控制”,或者类似的东西。这就是我的意思是:基于Ant的版本控制

的JAR文件的一个常见的命名规则是一样的东西MyJar-1.0.14.jar,其中MyJar是JAR文件的基本名称和-1.0.14表示版本号。

在我的蚂蚁buildscript,我将有一个任务dist将看东西这样的:

<target name="dist" depends="compile"> 
    <jar destfile="${dist.dir}/MyJar.jar"> 
     <!-- All the filesets to JAR up --> 
    </jar> 
</target> 

我的问题是:不支持蚂蚁任何会自动更新JAR文件名每个外部方案的版本号是否正确?东西让Ant目标实际上可能是这样的:

<target name="dist" depends="compile"> 
    <jar destfile="${dist.dir}/MyJar-[revision].jar"> 
     <!-- All the filesets to JAR up --> 
    </jar> 
</target> 

[revision]是构建/修订版本号根据一些内部定义的修订方案(也许在一些其他的外部文件中定义)?

如果是这样的话,如果我了解我的情况,然后我坚持我想要的JAR,我的分布的新版本每次修改build.xml文件?是?没有?

回答

0

不知道任何Ant任务自动递增的数字,但你应该定义修订为一个build.properties文件的属性您将导入。属性文件将包含Ant build.xml文件

<property file="build.properties"/> 
<target> 
    <jar destfile="${dist.dir}/MyJar-${revision}.jar> 

默认值

revision=1.0 

更新在构建时的属性只需要调用Ant目标与-D值设置

ant -Drevision=2.0 dist 

这避免了需要更新在发布时的任何文件。

+0

我同意这是实现结果的最简单方法,但是会出现一个相关问题:用户期望增量构建的内容;即没有清理干净的地方?我们应该尝试删除旧版本的jar文件还是应该积累它们? –

0

您可以添加属性,并使用它像:

<jar destfile="${dist.dir}/MyJar-${revision}.jar"> 
4

有一个Ant任务,这将增加内部版本号。其所谓的buildNumber

阅读,增量,写一个版本号为默认文件,build.number。

<buildnumber file="mybuild.number"/>` 

buildNumber.html

我们的蚂蚁处理是这样的

1 - 版本控制更新构建文件

2 - 增量的版本号

3 - 检查/提交内部编号