您的位置:首页 > 其它

Ant内置任务之dependset

2018-02-11 15:04 190 查看

一、概述

dependset是ant内置任务,用于管理资源间任意依赖关系。dependset将一组源与一组目标文件进行比较。如果任一源的最近修改时间比任一目标文件都新, 则删除所有目标文件。源和目标文件可以通过嵌套资源集合来指定,源可以是任何类型的资源,但是目标仅限于文件。至少要指定一组源和一组目标。如果使用通配符include和exclude模式,并且不担心丢失文件,可以使用fileset。如果项把不存在的文件当作文件过期,那么应该使用fileList,如果在源或目标列表中有任何文件不存在,就会删除所有目标文件。dependset对于获取没有或不能确定算法的依赖项很有用。例如,style只能将xml文件和xslt样式表进行比较来确定是否重塑源。而使用dependset可以将依赖检查扩展为DTD、XSD以及其他由主样式表导入的样式表。

二、属性

verbose:列出所有删除的目标文件以及删除原因。默认为false。

支持以下嵌套元素:

sources:ant1.7起,可以嵌套任意资源集合的联合,相当于资源集合中的Union。

srcfileset:指定一个文件集,文件集中的所有文件会与targetfileset和targetfilelist中的所有文件进行比较。可以指定多个srcfileset。

srcfilelist:指定一个文件列表,文件列表中的所有文件会与targetfileset和targetfilelist中的所有文件进行比较。可以指定多个srcfilelist。

targets:ant1.7起,可以包含任意基于文件系统的资源,相当于Path。

targetfileset:指定一个文件集,文件集中的所有文件会与srcfileset和srcfilelist中的所有文件进行比较。可以指定多个targetfileset。

targetfilelist:指定一个文件列表,文件列表中的所有文件会与srcfileset和srcfilelist中的所有文件进行比较。可以指定多个targetfilelist。

三、简单示例

<project>
<dependset verbose="true">
<srcfilelist dir="test\s1" files="test1.txt,test2.txt"/>
<srcfilelist dir="test\s2" files="test1.txt,test2.txt"/>
<targetfileset dir="test\t" includes="*.xml"/>
<targetfileset dir="test\t" includes="*.txt"/>
</dependset>
</project>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息