Java 扩展现有的ant路径标记
是否可以扩展ant构建文件中的现有路径标记?例如,我想扩展:Java 扩展现有的ant路径标记,java,ant,Java,Ant,是否可以扩展ant构建文件中的现有路径标记?例如,我想扩展: <path id="project.classpath"> <pathelement path="build/classes" /> </path> 如果尝试以下操作,则无法直接扩展现有路径: <path id="project.classpath"> <pathelement path="build/classes" /> </path> <p
<path id="project.classpath">
<pathelement path="build/classes" />
</path>
如果尝试以下操作,则无法直接扩展现有路径:
<path id="project.classpath">
<pathelement path="build/classes" />
</path>
<path id="project.classpath">
<pathelement path="${ant.refid:project.classpath}" />
<pathelement path="module1/lib" />
</path>
每次都将id
重新分配到不同的路径。通常这是一个坏主意,因为您无法确定构建中的每个点使用了什么路径:所以请小心使用
<path id="project.classpath">
<pathelement path="build/classes" />
</path>
<path id="project.classpath">
<pathelement path="${ant.refid:project.classpath}" />
<pathelement path="module1/lib" />
</path>
<path id="cp">
<pathelement path="build/classes" />
</path>
<echo message="${ant.refid:cp}" />
<string id="cps" value="${toString:cp}" />
<path id="cp">
<pathelement path="${ant.refid:cps}" />
<pathelement path="module1/lib" />
</path>
<echo message="${ant.refid:cp}" />
<string id="cps" value="${toString:cp}" />
<path id="cp">
<pathelement path="${ant.refid:cps}" />
<pathelement path="module2/lib" />
</path>
<echo message="${ant.refid:cp}" />
[echo] /ant/path/build/classes
[echo] /ant/path/build/classes:/ant/path/module1/lib
[echo] /ant/path/build/classes:/ant/path/module1/lib:/ant/path/module2/lib