使用属性文件从SVN获取代码

时间:2015-04-13 06:26:52

标签: ant

我有一个场景,使用ANT Script我必须使用属性文件从 SVN 获取代码。

属性文件具有属性projectlib,其中模块中使用的库以逗号分隔值列出,其对应的修订号列在下面的属性projectlib.revision中。

我必须使用相应的修订号来获取projectlib。

属性文件如下所示:

projectliblist=XXXXLib1,XXXXLib2
projectlibrevision=3195,3289    

例如,我必须从XXXXLib13195 XXXXLib2获取3289

我需要逻辑来将projectlib与相应的版本号匹配,而不是此场景的完整脚本。

我尝试使用For列表,但我不知道如何索引参数列表。

1 个答案:

答案 0 :(得分:0)

您展示的这对列表属性存在的问题是(至少使用ant-contrib:for)您无法交叉引用它们。

This answer显示了如何使用ant-contrib:for / macrodef轻松交叉引用属性,并可能作为示例。

对于您的情况,我建议您将属性结构更改为Ant中更具消耗性,例如:

projectliblist=XXXXLib1,XXXXLib2
projectlib.XXXXLib1.revision=3195
projectlib.XXXXLib2.revision=3289  

你可以按照我上面链接的答案中的模式消费,或者可能:

projectliblist=XXXXLib1/3195,XXXXLib2/3289  

你可以在一个循环中使用它,它将每个列表元素分成两部分并传递给一个带有两个属性的macrodef。