A <zipfileset>
is a special form of a <fileset>
which can behave in 2
different ways :
<zipfileset>
supports all attributes of <fileset>
in addition to those listed below. Note that zip archives in general
don't contain entries with leading slashes so you shouldn't use
include/exclude patterns that start with slashes either.
Since Ant 1.6, a zipfileset can be defined with the id attribute and referred to with
the refid attribute.
Attribute | Description | Required |
prefix | all files in the fileset are prefixed with that path in the archive. | No |
fullpath | the file described by the fileset is placed at that exact location in the archive. | No |
src | may be used in place of the dir attribute to specify a zip file whose contents will be extracted and included in the archive. | No |
filemode | A 3 digit octal string, specify the user, group and other modes in the standard Unix fashion. Only applies to plain files. Default is 644. since Ant 1.5.2. | No |
dirmode | A 3 digit octal string, specify the user, group and other modes in the standard Unix fashion. Only applies to directories. Default is 755. since Ant 1.5.2. | No |
encoding | The character encoding to use for filenames inside the zip file. For a list of possible values see the Supported Encodings. Defaults to the platform's default character encoding. | No |
erroronmissingarchive | Specify what happens if the archive does not exist. If true, a build error will happen; if false, the fileset will be ignored/empty. Defaults to true. Since Ant 1.8.0 | No |
The fullpath attribute can only be set for filesets that represent a single file. The prefix and fullpath attributes cannot both be set on the same fileset.
When using the src attribute, include and exclude patterns may be used to specify a subset of the archive for inclusion in the archive as with the dir attribute.
Please note that currently only the tar and zip tasks use the permission.
The specified resource will be used as src.
<zip destfile="${dist}/manual.zip">
<zipfileset dir="htdocs/manual" prefix="docs/user-guide"/>
<zipfileset dir="." includes="ChangeLog27.txt" fullpath="docs/ChangeLog.txt"/>
<zipfileset src="examples.zip" includes="**/*.html" prefix="docs/examples"/>
</zip>zips all files in the
htdocs/manual
directory into thedocs/user-guide
directory in the archive, adds the fileChangeLog27.txt
in the current directory asdocs/ChangeLog.txt
, and includes all the html files inexamples.zip
underdocs/examples
. The archive might end up containing the files:docs/user-guide/html/index.html
docs/ChangeLog.txt
docs/examples/index.html