2008-11-03 35 views
2

我使用Ant來構建Delphi應用程序(從CruiseControl中調用)。螞蟻構建,發現應用程序並迭代它們

我想讓ant遞歸搜索查找文件* .dpr的目錄樹,找到時調用第二個build.xml或更可取的宏或目標,將每個找到的文件名作爲「參數」 。我發現我可以使用subant來查找build.xml文件並按順序運行它們,但這不是我想要的,因爲我想避免爲每個應用程序創建build.xml。

我想避免的是不得不在我的build.xml中列出我的應用程序,而是讓螞蟻找到它們。

請不要告訴我使用不同的構建工具,因爲我們已經在使用Ant方面進行了大量投資。

回答

3

如果使用ant-contrib,你可以使用一個for循環:

<for param="file"> 
    <fileset dir="${process.dir}" includes="**/*.dpr" /> 
    <sequential> 
    <ant antfile="subbuild.xml"> 
     <property name="in" value="@{file}"/>        
    </ant> 
    </sequential> 
</for>  

您也可以撥打宏或使用該方法的目標。

+0

謝謝,到目前爲止我還沒有看過ant-contrib。我會看看。 – 2008-11-04 01:11:14