| <!-- |
| 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. |
| --> |
| <html> |
| |
| <head> |
| <meta http-equiv="Content-Language" content="en-us"> |
| <link rel="stylesheet" type="text/css" href="style.css"> |
| <title>Apache Compress Antlib User Manual</title> |
| </head> |
| |
| <body> |
| <h2>Apache Compress Antlib User Manual</h2> |
| |
| <p>This Antlib contains tasks and resources that provide |
| compression/uncompression and archival/unarchival capabilities |
| based on <a href="http://commons.apache.org/compress/">Apache |
| Commons Compress</a>. Using Apache Commons Compress 1.14 this |
| Antlib supports gzip, bzip2, lzma standalone, xz, .Z, DEFLATE, |
| Snappy, LZ4, Brotli and pack200 compression and ar, arj, cpio, |
| 7z, Unix dump, tar and zip archives. Support for arj, .Z, |
| Brotli and dump is read-only. 7z can only be used on filesystem |
| resources.</p> |
| |
| <h3>Known Limitations</h3> |
| |
| <p>Reading AR archives from non-filesystem resources currently |
| fails for reasons that haven't been investigated, yet. Most |
| likely the problem is within Apache Commons Compress.</p> |
| |
| <h3>Tasks and Types</h3> |
| |
| <p>This Antlib contains the following tasks:</p> |
| |
| <ul> |
| <li><a href="archive.html#ar">ar</a></li> |
| <li><a href="unpack.html#bunzip2">bunzip2</a></li> |
| <li><a href="pack.html#bzip2">bzip2</a></li> |
| <li><a href="archive.html#cpio">cpio</a></li> |
| <li><a href="pack.html#deflate">deflate</a></li> |
| <li><a href="unpack.html#gunzip">gunzip</a></li> |
| <li><a href="pack.html#gzip">gzip</a></li> |
| <li><a href="pack.html#lz4">lz4</a></li> |
| <li><a href="pack.html#lzma">lzma</a></li> |
| <li><a href="pack.html#pack200">pack200</a></li> |
| <li><a href="pack200normalize.html">pack200normalize</a></li> |
| <li><a href="archive.html#sevenz">sevenz</a></li> |
| <li><a href="pack.html#snappy">snappy</a></li> |
| <li><a href="archive.html#tar">tar</a></li> |
| <li><a href="expand.html#un7z">un7z</a></li> |
| <li><a href="expand.html#unar">unar</a></li> |
| <li><a href="expand.html#unarj">unarj</a></li> |
| <li><a href="unpack.html#unbrotli">unbrotli</a></li> |
| <li><a href="expand.html#uncpio">uncpio</a></li> |
| <li><a href="unpack.html#undeflate">undeflate</a></li> |
| <li><a href="expand.html#undump">undump</a></li> |
| <li><a href="unpack.html#unlz4">unlz4</a></li> |
| <li><a href="unpack.html#unlzma">unlzma</a></li> |
| <li><a href="unpack.html#unpack200">unpack200</a></li> |
| <li><a href="unpack.html#unsnappy">unsnappy</a></li> |
| <li><a href="expand.html#untar">untar</a></li> |
| <li><a href="unpack.html#unxz">unxz</a></li> |
| <li><a href="unpack.html#unz">unz</a></li> |
| <li><a href="expand.html#unzip">unzip</a></li> |
| <li><a href="pack.html#xz">xz</a></li> |
| <li><a href="archive.html#zip">zip</a></li> |
| </ul> |
| |
| <p>This Antlib contains the following resources:</p> |
| |
| <ul> |
| <li><a href="archives.html">archives</a></li> |
| <li><a href="entry.html#arentry">arentry</a></li> |
| <li><a href="entry.html#arjentry">arjentry</a></li> |
| <li><a href="fileset.html#arfileset">arfileset</a></li> |
| <li><a href="fileset.html#arjfileset">arjfileset</a></li> |
| <li><a href="compresource.html#brotliresource">brotliresource</a></li> |
| <li><a href="compresource.html#bzip2resource">bzip2resource</a></li> |
| <li><a href="entry.html#cpioentry">cpioentry</a></li> |
| <li><a href="fileset.html#cpiofileset">cpiofileset</a></li> |
| <li><a href="compresource.html#deflateresource">deflateresource</a></li> |
| <li><a href="entry.html#dumpentry">dumpentry</a></li> |
| <li><a href="fileset.html#dumpfileset">dumpfileset</a></li> |
| <li><a href="compresource.html#gzipresource">gzipresource</a></li> |
| <li><a href="compresource.html#lz4resource">lz4resource</a></li> |
| <li><a href="compresource.html#lzmaresource">lzmaresource</a></li> |
| <li><a href="compresource.html#pack200resource">pack200resource</a></li> |
| <li><a href="compresource.html#snappyresource">snappyresource</a></li> |
| <li><a href="entry.html#tarentry">tarentry</a></li> |
| <li><a href="fileset.html#sevenzfileset">sevenzfileset</a></li> |
| <li><a href="entry.html#sevenzentry">sevenzentry</a></li> |
| <li><a href="fileset.html#tarfileset">tarfileset</a></li> |
| <li><a href="compresource.html#xzresource">xzresource</a></li> |
| <li><a href="entry.html#zipentry">zipentry</a></li> |
| <li><a href="fileset.html#zipfileset">zipfileset</a></li> |
| <li><a href="compresource.html#zresource">zresource</a></li> |
| </ul> |
| |
| <p>This Antlib contains the following conditions that work on the |
| <code>*entry</code>-resources of this Antlib as well as their |
| counterparts in Ant itself:</p> |
| |
| <ul> |
| <li><a href="conditions.html#hasgroupid">hasgroupid</a></li> |
| <li><a href="conditions.html#hasgroupname">hasgroupname</a></li> |
| <li><a href="conditions.html#hasmode">hasmode</a></li> |
| <li><a href="conditions.html#hasuserid">hasuserid</a></li> |
| <li><a href="conditions.html#hasusername">hasusername</a></li> |
| </ul> |
| |
| <h3>Installing and Using</h3> |
| |
| <p>This Antlib requires Apache Ant 1.8.0 or higher, Apache |
| Commons Compress 1.14 or higher and Java7 or higher.</p> |
| |
| <p>In order to use LZMA, XZ or most of the 7z support |
| the <a href="https://tukaani.org/xz/java.html">XZ for Java</a> |
| version 1.6 or later is required.</p> |
| |
| <p>In order to use Brotli |
| the <a href="https://github.com/google/brotli">Brotli dec</a> |
| library verision 0.1.2 or later is required.</p> |
| |
| <p>If you are building the Antlib from sources, run |
| the <code>antlib</code> target and you'll get a |
| file <code>ant-compress-VERSION.jar</code>. If you've |
| downloaded a binary release, you are already there.</p> |
| |
| <p>In order to use the Antlib, you can either |
| use <code>taskdef</code> or rely on Ant's autodiscovery by using |
| an XML namespace and the Antlib's URI. The <code>taskdef</code> |
| approach allows you to specify a custom classpath while you must |
| make sure Ant finds the Antlib itself as well as Apache Commons |
| Compress - either because it is in a well known place like |
| <code>$ANT_HOME/lib</code> or using the <code>-lib</code> |
| command line option - when using autodiscovey.</p> |
| |
| <h4>The <code>taskdef</code> approach</h4> |
| |
| <p>Before you can use any of the tasks or resources you must use |
| a <code>taskdef</code> task like:</p> |
| |
| <pre> |
| <taskdef |
| uri="antlib:org.apache.ant.compress" |
| resource="org/apache/ant/compress/antlib.xml"> |
| <classpath> |
| <pathelement location="YOUR-PATH-TO/ant-compress-VERSION1.jar"/> |
| <pathelement location="YOUR-PATH-TO/commons-compress-VERSION2.jar"/> |
| <!-- optional dependencies --> |
| <pathelement location="YOUR-PATH-TO/xz-VERSION3.jar"/> |
| <pathelement location="YOUR-PATH-TO/dec-VERSION4.jar"/> |
| </classpath> |
| </taskdef> |
| </pre> |
| |
| <p>And later use something like:</p> |
| |
| <pre> |
| <comp:tar |
| xmlns:tar="antlib:org.apache.ant.compress" |
| ... |
| </pre> |
| |
| <h4>The autodiscovery approach</h4> |
| |
| <pre> |
| <project |
| xmlns:comp="antlib:org.apache.ant.compress" |
| ... |
| </pre> |
| |
| <p>And later use something like:</p> |
| |
| <pre> |
| <comp:tar |
| ... |
| </pre> |
| |
| </body> |
| </html> |