所以总的问题是:
我们有多个属性文件。
如果它们在同一个文件中且我查询mg.prop,那么我会得到“Hello”的结果。但由于它们在不同的文件中,这不起作用(我需要先加载prop1再加载prop2!)
我编写了一个自定义的ant任务,它执行以下操作:
我们有多个属性文件。
<property file="prop1"/>
<property file="prop2"/>
prop1包含一个类似于以下的属性:
mg.prop = ${mg2.prop}
prop2 包含 mg2.prop
mg2.prop = Hello
如果它们在同一个文件中且我查询mg.prop,那么我会得到“Hello”的结果。但由于它们在不同的文件中,这不起作用(我需要先加载prop1再加载prop2!)
我编写了一个自定义的ant任务,它执行以下操作:
String resolved = resolveProperty(propertyName);
getProject().setProperty(propertyName, resolved);
如果我运行
log("Resolved property value = " + getProject().getProperty(propertyName));
接着,我获得了正确的值。
然而,在Ant脚本中,如果我执行
<echo message="${mg.prop}"/>
它显示我原始值。
你有没有什么想法如何解决这个问题?