如何检查目录中是否存在特定文件

时间:2012-05-12 09:38:03

标签: ant

我在/programs/src中有一个jar文件我想让我的程序打印一条消息,它出现在目录中:

<if>
    <available file="**/*.jar" />
    <then>
        <echo message="Available" />
    </then>
    <else>
    <echo message="Not Available" />
    </else> 

但它不起作用

2 个答案:

答案 0 :(得分:1)

<available>的文档中没有任何内容表明它可以处理通配符。您需要使用实际的文件路径。

答案 1 :(得分:0)

您可以使用ant中的内置${toString:yourfilesetid}机制与 Ant Addon Flaka 结合使用:

<project name="demo" xmlns:fl="antlib:it.haefelinger.flaka">
 <fileset dir="/home/rosebud/temp" includes="**/*.jar" id="foobar"/>
  <fl:choose>
   <fl:when test=" '${toString:foobar}' ne '' ">
    <echo message="Available" />
    <!-- .. other stuff -->
   </fl:when>
   <fl:otherwise>
    <echo message="Not Available" />
    <!-- .. other stuff -->
   </fl:otherwise>
  </fl:choose>
</project>