Ant内置资源选择器

        antlib有几个内置的资源选择器:

  •         name:通过名字选择资源,具有以下属性:
                    name:使用标准ant模式进行测试的名称模式。
                    regex:匹配文件使用的正则表达式。
                    casesensitive:是否区分大小写,默认为true。
                    handledirsep:ant1.8起,映射器进行匹配时是否将资源名称或name属性中的“\”当作“/”处理。默认为false。
  •         exists:选择存在的文件。
  •         date:按日期选择文件,具有以下属性:
                    millis:自1970年1月1日起的时间毫秒数。
                    datetime:格式化的对比时间。
                    pattern:datetime使用的SimpleDateFormat兼容模式。默认为MM/DD/YYYY HH:MM AM(或PM)。
                    granularity:由于不是每个系统都支持修改时间精确到毫秒级,所以在比较修改时间的毫秒数时允许存在一定的误差,不同平台的默认值不同:FAT文件系统2s,Unix 1s,NTFS 1ms。
                    when:可选值为before、after、equal,默认为equal。
  •         type:通过类型(文件或目录)选择资源,具有以下属性:
                    type:ant1.8起,可选值为file、dir、any。
  •         size:通过大小选择资源,具有以下属性:
                    size:用于比较的大小,单位为字节。
                    when:比较类型:equal/eq、greater/gt、less/lt、ge(大于等于)、ne(不等于)、le(小于等于),默认为equal。
  •         instanceof:根据类型选择资源,具有以下属性:
                    class:资源必须是类的一个实例。
                    type:必须从资源中分配的类型。
                    uri:必须定义的类型的uri。
  •         and:如果一个资源被所有的嵌套资源选择器选中,则选择此资源。
  •         or:如果一个资源被至少一个嵌套资源选择器选中,则选择此资源。
  •         not:否定单个资源选择器的结果。
  •         none:如果一个资源没有嵌套资源选择器选中,则选择此资源。
  •         majority:如果一个资源被大多数嵌套资源选择器选中,则选择此资源,具有以下属性:
                    allowtie:当嵌套的资源选择器为偶数时,如果选择的资源正好占一半,是否认为是大多数,默认为true。
  •         modified:见核心选择器modified。
  •         contains:见核心选择器contains。
  •         containsregexp:见核心选择器containsregexp。
  •         compare:通过使用资源比较器与一个或多个“control”的资源进行比较来选择文件。用于比较的资源必须通过嵌套“control”元素指定。compare具有以下属性:
                    when:比较类型,equal/eq、greater/gt、less/lt、le(小于等于)、ge(大于等于)、ne(不等于),默认为equal。
                    against:比较方式,all/each/every、any/some、one、most/majority、none,默认为all。
  •         readable:见核心选择器readable。
  •         writable:见核心选择器writable。

简单示例

<project xmlns:rsel="antlib:org.apache.tools.ant.types.resources.selectors" 
		 xmlns:rcmp="antlib:org.apache.tools.ant.types.resources.comparators">
	
	<restrict>
		<fileset dir="../../task" includes="**/**" />
		<name regex="(.*)\.xml" />
		<not>
		<name regex="(.*)d\.xml" />
		</not>

		<compare when="ge" against="each">
			<control>
				<file name="C:\Users\runner\task\ant\build1.xml" />
			</control>
			<size />
		</compare>
	</restrict>
</project>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值