Ant手册很清楚properties are immutable(即一旦设置了属性值,后续的<property>
元素就无法更改):
属性
描述
在项目中设置属性(按名称和值)或属性集(来自文件或资源)。属性区分大小写。
属性是不可变的:首先设置属性的人会将其冻结为其余的构建;他们绝对不是变数。
我试图了解<path>
,<classpath>
,FLEX
等同样如此。它没有在Ant手册中向我跳出来。
答案 0 :(得分:1)
与属性不同,Ant中的路径类结构是可变的。每个后续更新都会更改以前的版本。
build.xml
<?xml version="1.0" encoding="utf-8"?>
<project name="AntPathTest" basedir=".">
<property name="foo" value="bar"/>
<property name="foo" value="baz"/>
<path id="spam">
<pathelement path="ham"/>
</path>
<path id="spam">
<pathelement path="eggs"/>
</path>
<echo message="foo => ${foo}"/>
<pathconvert property="spam" refid="spam"/>
<echo message="spam => ${spam}"/>
</project>
$ ant
Buildfile: /path/to/AntPathTest/build.xml
[echo] foo => bar
[echo] spam => /path/to/AntPathTest/eggs