Ant内置任务之unjar/untar/unwar/unzip

一、概述

        unjar/untar/unwar/unzip是Ant内置任务,用于解压zip、war或jar文件,PatternSet用于选择从存档中提取的文件,资源集合用于选择执行解压的存档文件。Unjar/Unwar/Unzip只支持基于文件系统的资源结合,Untar支持任意资源集合。Ant1.7之前只支持fileset做为嵌套元素。可以通过嵌套mapper元素来定义文件名转换,默认映射器为identitymapper。 在进行文件时区偏移的计算时,不同的ZIP工具处理时间戳的方式不同,一些ZIP库从文件系统中读取时间戳并保存,而其他库在读和写文件时会修改时间戳,以使所有的时间戳有相同的时区。由一个库创建的zip存档可能会在其他库提取文件时提取到错误的时间戳。

二、属性

        src:要解压的存档文件,可以通过嵌套资源集合元素来指定。
        dest:保存提取出的文档的目录。
        overwrite:是否覆盖文件,即使它们比存档中的条目更新,默认为true。
        compression:此属性只对untar有效,用于设置压缩方法。可选值有:none、gzip和bzip2,默认为none。
        encoding:此属性对untar无效,用于设置zip文件中文件名的编码。可选值参考java文档,默认为utf8,平台的默认字符编码使用魔术值native-encoding。
        failOnEmptyArchive:ant1.8起,尝试提取空的归档是否产生错误,默认为false。
        stripAbsolutePathSpec:ant1.8起,在提取文件之前,是否应当删除提取的文件的文件名之前的“/”或“\”,会在应用include/exclude模式和嵌套mapper之前改变条目名称,默认为false。
        scanForUnicodeExtraFields:此属性对untar无效,如果存档包含 Unicode 额外字段, 则使用它们来设置文件名, 而忽略指定的编码,默认为true。

三、简单示例

<project>
	<unjar src="${ant.home}/lib/ant-testutil.jar" dest="result" overwrite="false"/>
	<untar src="rrdtool-1.3.1.tar.gz" dest="." overwrite="false" compression="gzip"/>
</project>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值