扩展Ant路径?

时间:2010-11-09 17:03:52

标签: ant

在ANT中用另一条路径扩展路径是什么意思?

如果我有下列内容:

<path>
  <pathelement path="build/classes;lib/junit.jar" />
</path>

是否意味着Ant将build/classes;lib/junit.jar分为build/classeslib/junit.jar

换句话说,蚂蚁是否认为我们正在定义两个路径元素?

提前非常感谢你。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:3)

你的例子:

<path>
  <pathelement path="build/classes;lib/junit.jar" />
</path>

相当于:

<path>
  <pathelement path="build/classes" />
  <pathelement path="lib/junit.jar" />
</path>

在这两种情况下,创建的路径都包含build/classes目录的内容以及jarfile lib/junit.jar的内容。

此机制允许您在构建文件中动态创建所需的路径,而不必构造组合字符串build/classes;lib/junit.jar

例如,如果你有classes目录和属性中指定的junit jar的路径,你可以将它们组合成一个路径:

<property name="classes.dir" location="build/classes" />
<property name="junit.jar" location="lib/junit.jar" />

...

<path>
  <pathelement path="${classes.dir}" />
  <pathelement path="${junit.jar}" />
</path>

此路径与上述示例相同。

您还可以在构建文件的其他部分单独引用这些项目,如果需要更改任何值,则只需在一个位置进行更改。

答案 1 :(得分:0)

pathelement 标记的操作记录为here

  

您可以指定PATH-和   使用两者的CLASSPATH类型引用   “:”和“;”作为分隔符。   Ant会将分隔符转换为   正确的当前特征   操作系统。