Ant - 如何在特定文件夹中获取所有文件的名称

时间:2010-09-26 06:29:48

标签: ant

这是我用于生成jar包的Ant脚本。我有很多用于清单Class-Path属性的jar包,它们都在特定的文件夹中。

我不想硬编码,我怎样才能自动获取它们?

<jar jarfile="${client_deploy_dir}/HelloWorld.jar"
     basedir="${client_work_dir}/compiled">
   <manifest>
      <attribute name="Main-Class" value="HelloWorld.Main"/>
      <attribute name="Class-Path" value="???"/>
   </manifest>
</jar>

由于

2 个答案:

答案 0 :(得分:2)

你走在正确的轨道上,使用manifestclasspath任务。 jarfile 属性用于创建文件集中包含的jar的相对链接。

<manifestclasspath property="jar.classpath" jarfile="${client_work_dir}/HelloWorld.jar">
  <classpath>
    <fileset name="" dir="${client_work_dir}/lib" includes="*.jar"/>
  </classpath>
</manifestclasspath>

<jar jarfile="${client_deploy_dir}/HelloWorld.jar" basedir="${client_work_dir}/compiled">
    <manifest>
         <attribute name="Main-Class" value="HelloWorld.Main"/>
         <attribute name="Class-Path" value=""${jar.classpath}"/>
      </manifest>
   </jar>

答案 1 :(得分:0)

查看ant pathconvert任务。您可以使用它将现有文件集扩展为文件列表。