56 lines
1.8 KiB
Plaintext
56 lines
1.8 KiB
Plaintext
|
|
||
|
XZ for Java
|
||
|
===========
|
||
|
|
||
|
Introduction
|
||
|
|
||
|
This aims to be a complete implementation of XZ data compression
|
||
|
in pure Java. Features:
|
||
|
- Full support for the .xz file format specification version 1.0.4
|
||
|
- Single-threaded streamed compression and decompression
|
||
|
- Single-threaded decompression with limited random access support
|
||
|
- Raw streams (no .xz headers) for advanced users, including LZMA2
|
||
|
with preset dictionary
|
||
|
|
||
|
Threading is planned but it is unknown when it will be implemented.
|
||
|
|
||
|
For the latest source code, see the project home page:
|
||
|
|
||
|
https://tukaani.org/xz/java.html
|
||
|
|
||
|
The source code is compatible with Java 5 and later.
|
||
|
|
||
|
Building
|
||
|
|
||
|
It is recommended to use Apache Ant. Type "ant" to compile the
|
||
|
classes and create the .jar files. Type "ant doc" to build the
|
||
|
javadoc HTML documentation. Note that building the documentation
|
||
|
will download a small file named "package-list" from Oracle to
|
||
|
enable linking to the documentation of the standard Java classes.
|
||
|
|
||
|
If you are using OpenJDK 9 or later, you will need to edit the
|
||
|
"sourcever = 1.5" line in the file "build.properties" before
|
||
|
running "ant". Set it to 1.6 or higher. The default value 1.5
|
||
|
isn't supported by OpenJDK 9 or later.
|
||
|
|
||
|
If you cannot or don't want to use Ant, just compile all .java
|
||
|
files under the "src" directory.
|
||
|
|
||
|
Demo programs
|
||
|
|
||
|
You can test compression with XZEncDemo, which compresses from
|
||
|
standard input to standard output:
|
||
|
|
||
|
java -jar build/jar/XZEncDemo.jar < foo.txt > foo.txt.xz
|
||
|
|
||
|
You can test decompression with XZDecDemo, which decompresses to
|
||
|
standard output:
|
||
|
|
||
|
java -jar build/jar/XZDecDemo.jar foo.txt.xz
|
||
|
|
||
|
Reporting bugs
|
||
|
|
||
|
Report bugs to <lasse.collin@tukaani.org> or visit the IRC channel
|
||
|
#tukaani on Freenode and talk to Larhzu.
|
||
|
|