如何在war任务中引用classpathref?

时间:2009-02-26 15:06:44

标签: ant

我为我的应用程序库librairies声明了以下类路径引用:

<path id="libraries">
    <fileset dir="${lib.dir}" includes="**/*.jar" />
</path >

我可以使用librairies的类路径编译代码:

<javac srcdir="${src}" destdir="${build.classes}" classpathref="libraries"/>

但我找不到在我的WAR文件中包含librairies文件集的方法:

<war destfile="${release.dir}/rel.war" webxml="${webinf}">
    <classes dir="${build.classes}"/>

     <!-- I need to copy paste the same directory declaration! -->
    <lib dir="${lib.dir}" includes="**/*.jar"/> 
</war>

如何将“lib”声明替换为重用与javac任务相同的路径?

1 个答案:

答案 0 :(得分:3)

fileset中声明path并为其分配标识符:

<fileset id="xxx" dir="..." includes="..." />

然后在两个声明中引用标识符(lib指定文件集,因此您不必使用嵌套):

<path id="libraries">
    <fileset refid="xxx"/>
</path>
...
<lib refid="xxx"/>