Ant - delete task 的使用

delete

作用:Delete 任务可用于删除一个或多个文件,或删除一个或多个目录和目录下的文件。默认时不会删除空目录,要删除空目录可以设定includeEmptyDirs属性为true。在Delete任务中可以使用FileSet和DirSet类型。

属性:1. file:指定单个文件的文件名,使用绝对和相对地址。

2. dir: 指定一个目录名,不要轻易使用 ".", "和${basedir}", 除非想递归的删除整个基准目录和基准目录下的

所有文件。dir属性和file属性两者必须指定其一。

3. verbose: 是否显示已经删除的文件名。默认false

4. quiet:作用是指定当要被删除的文件或目录不存在时是否不显示提示信息(除非设置了-verbose和-debug)。

为false,代表要显示提示信息。quiet设置true意味着failonerror设置false。 默认false。

5. ailonerror:用于指定当出现错误时是否停止执行命令。默认true。

6. includeemptydirs:表明当使用FileSet类型时是否删除空的目录。默认false。

7. deleteonexit:用于指定是否采用Java File类中的deleteOnExit()方法,如果删除文件失败,那么jvm进程终止

时,会对文件进行删除,默认取值为false。

8. removeNotFollowedSymlinks: 如果符号链接没有被覆盖,那么他们是否应该被移除,因为覆盖符号链接或者最大符

号链接数太大了。默认false(介个不明白,求完整解释)。

9. performGCOnFailedDelete:当删除失败的时候,ant会再进行一次尝试。如果此属性设置true, 那么在进行第二次尝试之前会进行垃圾回收。 默认是true。

例子:

1. 删除lib/ant.jar文件

<delete file="/lib/ant.jar"/>

2. 删除lib目录

<delete dir="lib"/>

3. 删除本目录和子目录下扩展名为bak的文件

<delete>
<fileset dir="." includes="**/*.bak"/>
</delete>

4. 删除build下所有文件,包括build本身

<delete includeEmptyDirs="true">
<fileset dir="build"/>
</delete>

5. 删除build下所有文件,但不包括build本身

<delete includeemptydirs="true">
<fileset dir="build" includes="**/*"/>
</delete>

6. 删除src下的所有svn目录,因为svn默认除外的,所以要设置defaultexcludes =false。

<delete includeemptydirs="true">
<fileset dir="src" includes="**/.svn/" defaultexcludes="false"/>
</delete>
注意: <delete dir="x"/>和 <delete><fileset dir="x"/></delete>不同于,前者忽略 default excludes 一味覆盖所有符号连接。

附加: default excludes 包括:

**/*~
**/#*#
**/.#*
**/%*%
**/._*
**/CVS
**/CVS/**
**/.cvsignore
**/SCCS
**/SCCS/**
**/vssver.scc
**/.svn
**/.svn/**
**/.DS_Store
**/.git
**/.git/**
**/.gitattributes
**/.gitignore
**/.gitmodules
**/.hg
**/.hg/**
**/.hgignore
**/.hgsub
**/.hgsubstate
**/.hgtags
**/.bzr
**/.bzr/**
**/.bzrignore

猜你喜欢

转载自cyf0110.iteye.com/blog/1507909
今日推荐