Существует ли рекурсивная задача Ant для восстановления свойств из внешнего файла? - PullRequest
2 голосов
/ 12 апреля 2010

У меня проблема с получением свойств с помощью ant из файла свойств. С такой простой целью в моем build.xml я хотел бы получить как минимум два свойства path1 и path2. Я хотел бы иметь общую цель, чтобы получить эти два свойства .... во избежание изменения build.xml (просто добавив новую пропу)

Есть предложения? Заранее спасибо !

build.xml:

<target name="TEST" description="test ant">
    <property file="dependencies.properties"/>  
    <svn>  
        <export srcUrl="${path.prop}" destPath="${workspace}/rep/" />  
    </svn>  
</target>  

dependencies.properties:

path1.prop = /path/to/src1
path2.prop = /path/to/src2

Ответы [ 2 ]

1 голос
/ 13 апреля 2010

Спасибо, все работает. кроме того, вы можете использовать свойствоcopy из ant-contrib для получения других свойств из файла.

dependencies.list=path1,path2
path1.prop1=val1
path1.prop2=val2
path2.prop1=val3
path2.prop2=val4

как это:

<target name="main">
    <property file="dependencies.properties"/>
    <foreach list="${dependencies.list}" delimiter="," param="name" target="doExtract" inheritall="true"/>
</target>

<target name="doExtract">
    <propertycopy name="prop1" from="${name}.prop1" silent="true"/>
    <propertycopy name="prop2" from="${name}.prop2" silent="true"/>
    <svn>
        <export srcUrl="${prop1}" destPath="${workspace}/rep/"" />
    </svn>
</target>
0 голосов
/ 12 апреля 2010

Вы можете записать свои настройки пути в список через запятую в одном свойстве и использовать цикл foreach

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...