Cari di Apache Ant 
    Apache Ant User Manual
Daftar Isi
(Sebelumnya) TypedefUptodate (Berikutnya)
Apache Ant Tasks

Unzip

Unjar/Untar/Unwar/Unzip

Description

Unzips a zip-, war-, or jar file.

PatternSets are used to select files to extractfrom the archive. If no patternset is used, all files are extracted.

ResourceCollections may be used to select archived files to performunarchival upon. Only file system based resource collections aresupported by Unjar/Unwar/Unzip, this includes fileset, filelist, path, and files.Untar supports arbitrary resource collections.Prior to Apache Ant 1.7 only fileset has been supported as a nested element.

You can define filename transformations by using a nested mapper element. The default mapper is theidentity mapper.

File permissions will not be restored on extracted files.

The untar task recognizes the long pathname entries used by GNU tar.

Please note that different ZIP tools handle timestampsdifferently when it comes to applying timezone offset calculations offiles. Some ZIP libraries will store the timestamps as they've beenread from the filesystem while others will modify the timestamps bothwhen reading and writing the files to make all timestamps use the sametimezone. A ZIP archive created by one library may extract files with"wrong timestamps" when extracted by another library.

Ant's ZIP classes use the same algorithm as the InfoZIP tools andzlib (timestamps get adjusted), Windows' "compressed folders" functionand WinZIP don't change the timestamps. This means that using theunzip task on files created by Windows' compressed folders functionmay create files with timestamps that are "wrong", the same is true ifyou use Windows' functions to extract an Ant generated ZIParchive.

Parameters

Attribute Description Required
src archive file to expand. Yes, if filesets are not used.
dest directory where to store the expanded files. Yes
overwrite Overwrite files, even if they are newer than the corresponding entries in the archive (true or false, default is true). No
compression Note: This attribute is only available for the untar task.
compression method. Allowable values are "none", "gzip" and "bzip2". Default is "none".
No
encoding Note: This attribute is not available for the untar task.
The character encoding that has been used for filenames inside the zip file. For a list of possible values see http://download.oracle.com/javase/1.5.0/docs/guide/intl/encoding.doc.html.
Defaults to "UTF8", use the magic value native-encoding for the platform's default character encoding.
See also the discussion in the zip task page
No
failOnEmptyArchive whether trying to extract an empty archive is an error. since Ant 1.8.0 No, defaults to false
stripAbsolutePathSpec whether Ant should remove leading '/' or '' characters from the extracted file name before extracing it. Note that this changes the entry's name before applying include/exclude patterns and before using the nested mappers (if any). since Ant 1.8.0 No, defaults to false
scanForUnicodeExtraFields Note: This attribute is not available for the untar task.
If the archive contains uncode extra fields then use them to set the file names, ignoring the specified encoding.
See also the discussion in the zip task page
No, defaults to true

Examples

<unzip src="${tomcat_src}/tools-src.zip" dest="${tools.home}"/>

<gunzip src="tools.tar.gz"/><untar src="tools.tar" dest="${tools.home}"/>
<unzip src="${tomcat_src}/tools-src.zip"   dest="${tools.home}"> <patternset> <include name="**/*.java"/> <exclude name="**/Test*.java"/> </patternset></unzip>

<unzip dest="${tools.home}"> <patternset> <include name="**/*.java"/> <exclude name="**/Test*.java"/> </patternset> <fileset dir="."> <include name="**/*.zip"/> <exclude name="**/tmp*.zip"/> </fileset></unzip>

<unzip src="apache-ant-bin.zip" dest="${tools.home}"> <patternset> <include name="apache-ant/lib/ant.jar"/> </patternset> <mapper type="flatten"/></unzip>

Related tasks

<unzip src="some-archive" dest="some-dir">  <patternset> <include name="some-pattern"/>  </patternset>  <mapper type="some-mapper"/></unzip>
is identical to
<copy todir="some-dir" preservelastmodified="true">  <zipfileset src="some-archive"> <patternset>  <include name="some-pattern"/> </patternset>  </zipfileset>  <mapper type="some-mapper"/></copy>

The same is also true for <untar> and<tarfileset>. <copy> offersadditional features like filtering files on the fly,allowing a file to be mapped to multiple destinations or aconfigurable file system timestamp granularity.

<zip destfile="new.jar">  <zipfileset src="old.jar"> <exclude name="do/not/include/this/class"/>  </zipfileset></zip>

"Deletes" files from a zipfile.

<unzip src="${ant.home}/lib/ant.jar" dest="...">  <patternset> <include name="images/"/>  </patternset></unzip>

This extracts all images from ant.jar which are stored in the images directoryof the Jar (or somewhere under it). While extracting the directory structure (images)will be taken.

<unzip src="${ant.home}/lib/ant.jar" dest="...">  <patternset> <include name="**/ant_logo_large.gif"/> <include name="**/LICENSE.txt"/>  </patternset></unzip>

This extracts the two files ant_logo_large.gif and LICENSE.txt from theant.jar. More exactly: it extracts all files with these names from anywhere in the source file. While extracting the directory structure will be taken.

(Sebelumnya) TypedefUptodate (Berikutnya)