2011-11-03 100 views
3

我想做一些像屬性集從一組屬性到一個新屬性,但不將結果保存在屬性集中,而是保存在全局屬性空間中。Ant屬性全局到全局屬性空間

例如:

<syspropertyset> 
    <propertyref prefix="foo."/> 
    <mapper type="glob" from="foo.*" to="bar.*"/> 
</syspropertyset> 

將映射所有屬性,如foo.something到bar.something,但他們不會是一般提供給其他的任務,他們是不是在範圍有限的屬性集。

回答

0

您可以使用echoproperties任務並通過屬性文件。類似:

<property name="foo.bar" value="bahh" /> 
<property name="foo.baz" value="bazz" /> 

<propertyset id="fooz"> 
    <propertyref prefix="foo."/> 
    <mapper type="glob" from="foo.*" to="bar.*"/> 
</propertyset> 

<echoproperties destfile="bar.properties"> 
    <propertyset refid="fooz" /> 
</echoproperties> 
<property file="bar.properties"/> 

<echoproperties prefix="foo"/> 
<echoproperties prefix="bar"/> 

結果(某些措辭移除以簡化):

[echoproperties] foo.bar=bahh 
[echoproperties] foo.baz=bazz 
[echoproperties] bar.bar=bahh 
[echoproperties] bar.baz=bazz