2011-11-03 68 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