在ant构建脚本中,如何删除一个目录及其子目录中的所有*.java
个文件?
答案 0 :(得分:16)
稍微不清楚您希望删除.java
文件的目录树有多深。我将提供两种方法。
完全递归删除
以递归方式删除提供的目标目录下任何位置的所有.java
文件。
<delete>
<fileset dir="${basedir}/path/to/target/directory" includes="**/*.java"/>
</delete>
仅限于目标目录及其直接子目录
删除指定目标目录中的.java
个文件,以及目标目录的直接子目录中的任何目录,但不能再删除。{/ p>
<delete>
<fileset dir="${basedir}/path/to/target/directory" includes="*.java,*/*.java"/>
</delete>
有关其他选项,请查看删除任务的documentation。
小心 - 如果您为目标目录添加了错误的目录,则可能会删除您不想要的内容。考虑将目标目录的路径设置为相对于构建文件,或${basedir}
。
答案 1 :(得分:2)
<delete>
<fileset dir="." includes="**/*.java"/>
</delete>
上述delete任务从当前目录和所有子目录中删除扩展名为.java的所有文件。
答案 2 :(得分:-1)
<delete>
<filename name="**/*.java"/>
</delete>