2006-09-11 04:19:00 +00:00
|
|
|
<!--
|
|
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
|
|
this work for additional information regarding copyright ownership.
|
|
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
|
|
(the "License"); you may not use this file except in compliance with
|
|
|
|
the License. You may obtain a copy of the License at
|
|
|
|
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
See the License for the specific language governing permissions and
|
|
|
|
limitations under the License.
|
|
|
|
-->
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
<html>
|
|
|
|
|
|
|
|
<head>
|
|
|
|
<meta http-equiv="Content-Language" content="en-us">
|
2005-04-29 18:58:16 +00:00
|
|
|
<link rel="stylesheet" type="text/css" href="../stylesheets/style.css">
|
2002-02-03 22:00:42 +00:00
|
|
|
<title>GUnzip/BUnzip2 Task</title>
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
</head>
|
|
|
|
|
|
|
|
<body>
|
|
|
|
|
2018-01-22 23:52:21 +01:00
|
|
|
<h2 id="unpack">GUnzip/BUnzip2/UnXZ</h2>
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
<h3>Description</h3>
|
2017-01-12 17:19:15 +01:00
|
|
|
<p>Expands a resource packed using GZip, BZip2 or XZ.</p>
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
|
2018-02-28 07:58:59 +01:00
|
|
|
<p>If <var>dest</var> is a directory the name of the destination file is the same as <var>src</var>
|
|
|
|
(with the <q>.gz</q>, <q>.bz2</q> or <q>.xz</q> extension removed if present). If <var>dest</var> is
|
|
|
|
omitted, the parent dir of <var>src</var> is taken. The file is only expanded if the source resource
|
|
|
|
is newer than the destination file, or when the destination file does not exist.</p>
|
|
|
|
|
|
|
|
<p>XZ compression support has been added <em>since Apache Ant 1.10.1</em> and depends on external
|
|
|
|
libraries not included in the Ant distribution.
|
|
|
|
See <a href="../install.html#librarydependencies">Library Dependencies</a> for more information.</p>
|
2017-01-12 17:19:15 +01:00
|
|
|
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
<h3>Parameters</h3>
|
2018-02-28 07:58:59 +01:00
|
|
|
<table class="attr">
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
<tr>
|
2018-05-15 10:29:27 +02:00
|
|
|
<th scope="col">Attribute</th>
|
|
|
|
<th scope="col">Description</th>
|
|
|
|
<th scope="col">Required</th>
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
</tr>
|
|
|
|
<tr>
|
2018-02-28 07:58:59 +01:00
|
|
|
<td>src</td>
|
|
|
|
<td>the file to expand.</td>
|
|
|
|
<td>Yes, or a nested resource collection</td>
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
</tr>
|
|
|
|
<tr>
|
2018-02-28 07:58:59 +01:00
|
|
|
<td>dest</td>
|
|
|
|
<td>the destination file or directory.</td>
|
|
|
|
<td>No</td>
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
</tr>
|
|
|
|
</table>
|
2005-10-29 13:09:43 +00:00
|
|
|
<h3>Parameters specified as nested elements</h3>
|
|
|
|
|
2018-02-28 07:58:59 +01:00
|
|
|
<h4>any <a href="../Types/resources.html">resource</a> or single element resource collection</h4>
|
2005-10-29 13:09:43 +00:00
|
|
|
|
2018-02-28 07:58:59 +01:00
|
|
|
<p>The specified resource will be used as <var>src</var>.</p>
|
2005-10-29 13:09:43 +00:00
|
|
|
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
<h3>Examples</h3>
|
2018-05-15 09:51:58 +02:00
|
|
|
<p>Expand <samp>test.tar.gz</samp> to <samp>test.tar</samp></p>
|
2018-02-09 06:54:03 +01:00
|
|
|
<pre><gunzip src="test.tar.gz"/></pre>
|
2018-02-28 07:58:59 +01:00
|
|
|
|
2018-05-15 09:51:58 +02:00
|
|
|
<p>Expand <samp>test.tar.bz2</samp> to <samp>test.tar</samp></p>
|
2018-02-09 06:54:03 +01:00
|
|
|
<pre><bunzip2 src="test.tar.bz2"/></pre>
|
2018-02-28 07:58:59 +01:00
|
|
|
|
2018-05-15 09:51:58 +02:00
|
|
|
<p>Expand <samp>test.tar.xz</samp> to <samp>test.tar</samp></p>
|
2018-02-09 06:54:03 +01:00
|
|
|
<pre><unxz src="test.tar.xz"/></pre>
|
2018-02-28 07:58:59 +01:00
|
|
|
|
2018-05-15 09:51:58 +02:00
|
|
|
<p>Expand <samp>test.tar.gz</samp> to <samp>test2.tar</samp></p>
|
2018-02-09 06:54:03 +01:00
|
|
|
<pre><gunzip src="test.tar.gz" dest="test2.tar"/></pre>
|
2018-02-28 07:58:59 +01:00
|
|
|
|
2018-05-15 09:51:58 +02:00
|
|
|
<p>Expand <samp>test.tar.gz</samp> to <samp>subdir/test.tar</samp> (assuming <samp>subdir</samp> is
|
|
|
|
a directory).</p>
|
2018-02-09 06:54:03 +01:00
|
|
|
<pre><gunzip src="test.tar.gz" dest="subdir"/></pre>
|
2018-02-28 07:58:59 +01:00
|
|
|
|
2018-05-15 09:51:58 +02:00
|
|
|
<p>Download <samp>http://example.org/archive.tar.gz</samp> and expand it to <samp>archive.tar</samp>
|
|
|
|
in the project's <var>basedir</var> on the fly.</p>
|
2018-02-09 06:54:03 +01:00
|
|
|
<pre>
|
2005-10-29 13:09:43 +00:00
|
|
|
<gunzip dest=".">
|
|
|
|
<url url="http://example.org/archive.tar.gz"/>
|
|
|
|
</gunzip>
|
2018-02-09 06:54:03 +01:00
|
|
|
</pre>
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
|
2005-10-19 18:37:15 +00:00
|
|
|
<h3>Related tasks</h3>
|
|
|
|
|
2018-05-15 09:51:58 +02:00
|
|
|
<p>The following</p>
|
2018-02-28 07:58:59 +01:00
|
|
|
<pre><gunzip src="some-archive.gz" dest="some-dest-dir"/></pre>
|
|
|
|
<p>is identical to</p>
|
2005-10-19 18:37:15 +00:00
|
|
|
<pre>
|
|
|
|
<copy todir="some-dest-dir">
|
|
|
|
<gzipresource>
|
|
|
|
<file file="some-archive.gz"/>
|
|
|
|
</gzipresource>
|
|
|
|
<mapper type="glob" from="*.gz" to="*"/>
|
2018-02-28 07:58:59 +01:00
|
|
|
</copy></pre>
|
2005-10-19 18:37:15 +00:00
|
|
|
|
2018-02-28 07:58:59 +01:00
|
|
|
<p>The same is also true for <code><bunzip2></code> and <code><bzip2resource></code>
|
|
|
|
or <code><unxz></code> and <code><xzresource></code>. <code><copy></code> offers
|
|
|
|
additional features like <a href="../Types/filterchain.html">filtering files</a> on the fly,
|
|
|
|
allowing a file to be mapped to multiple destinations, preserving the last modified time or a
|
|
|
|
configurable file system timestamp granularity.</p>
|
2005-10-19 18:37:15 +00:00
|
|
|
|
Here are two new ant tasks - BZip2 and BUnzip2. �These
two tasks use the BZip2 compression algorithm (Visit:
http://sourceware.cygnus.com/bzip2/�for more info.) for
packing and unpacking.
These tasks resemble GZip and GUnzip tasks in input,
input validation, etc. �Hence, I refactored GZip and
GUnzip tasks as well so that the tasks GZip and BZip2
extend from a common base class named Pack, and
GUnzip and BUnzip2 extend from a common base class named
Unpack. �This lays the foundation for creating more Pack
tasks based on different algorithms like lzop, etc. in
the future.
The BZip2 and BUnzip2 tasks depend upon 4 classes:
BZip2Constants.java
CBZip2InputStream.java
CBZip2OutputStream.java
CRC.java
Keiron Liddle (keiron@aftexsw.com) has graciously
accepted to contribute the above code files he has
authored, under ASF license - many thanks to him. �I
have packaged them under org.apache.tools.bzip2,
mimicking the package naming style that has been used
for zip and tar tools we already have. �I have also
given proper credits to him in the code. �Perhaps, this
needs to exist under jakarta-commons, as Stefan had
suggested, but till then...
Submitted by: "Magesh Umasankar" <umagesh@rediffmail.com>
git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@269919 13f79535-47bb-0310-9956-ffa450edef68
2001-11-15 09:14:10 +00:00
|
|
|
</body>
|
|
|
|
</html>
|