For a java library for data compression, the strongest matches are google/brotli (This is a high-performance compression library that supports streaming), zeroturnaround/zt-zip (This library provides a simplified, high-performance API for handling) and bytedeco/javacpp (This is a native interoperability framework used to bridge). square/okio and java-native-access/jna round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
We curate open-source GitHub repositories matching “best java compression libraries”. Results are ranked by relevance to your query — pick filters below to narrow, or refine with AI.
Brotli is a lossless data compression library and engine that uses dictionary coding and frequency analysis to reduce file sizes. It provides tools for shrinking data streams and files while ensuring every bit of original information is preserved for perfect restoration. The project focuses on optimizing web content and network bandwidth by reducing the size of HTML, CSS, and JavaScript files. It is designed for integration into web servers and browsers to improve the efficiency of data transmission. The library includes capabilities for both compressing and decompressing data streams. It al
This is a high-performance compression library that supports streaming data, though it is implemented in C/C++ with bindings rather than being a native Java library.
ZeroTurnaround ZIP Library
This library provides a simplified, high-performance API for handling ZIP archives in Java, making it a direct tool for compression and archiving tasks despite its narrower focus on the ZIP format.
JavaCPP is a JNI C++ bridge and foreign function interface that provides a binding generator, a native library loader, and a native memory manager. It automates the creation of Java wrappers around native C++ headers and shared libraries to enable interoperability between the two languages. The project features a C++ binding generator that parses header files to automatically produce the necessary glue code and interfaces for calling native functions. It includes a native library loader that locates and extracts platform-specific binaries from the classpath into a local cache for runtime exec
This is a native interoperability framework used to bridge Java with C++ libraries, which could be used to build or integrate compression tools but is not a compression or archiving library itself.
Okio is a Java I/O library providing a set of tools for efficient byte-stream processing and file system operations. It functions as a buffered byte stream handler and streaming data transformer, utilizing a cross-platform file system API to manage data movement. The project is distinguished by its use of pooled mutable byte buffers that treat sequences as queues to reduce memory copying and garbage collection churn. It further decouples file operations from the host operating system through an abstraction-based file system, allowing for consistent path manipulation and atomic operations acro
Okio is a high-performance I/O and byte-stream processing library that provides building blocks for data handling, but it is not a dedicated compression and archiving library for managing complex archive formats.
JNA is a foreign function interface and native memory mapper that allows Java applications to call functions in shared native libraries without writing custom JNI wrapper code. It serves as a JNI alternative framework for invoking C functions and mapping native data structures using high-level interfaces. The library distinguishes itself through its ability to translate Java objects and primitives into C-style structs, unions, and pointers for cross-platform memory exchange. On Windows, it provides a dedicated toolkit for interacting with Component Object Model objects using both early and la
This is a foreign function interface library used to call native code from Java, which could be used to build a compression tool but does not provide any compression or archiving functionality itself.
Snappy is a high-performance lossless compression library implemented in C++. It provides data reduction methods that perfectly restore original information, focusing on system-level efficiency and processing velocity across different platforms. The library prioritizes high-speed data compression and decompression over achieving the maximum possible compression ratio. It is designed for real-time stream compression to reduce bandwidth usage without introducing significant processing latency. The implementation covers high-velocity data shrinking and rapid restoration. It includes resilient d
This is a high-performance C++ compression library rather than a Java-native library, meaning it would require JNI or a wrapper to be used in a Java project.
Zstandard is a lossless data compression library and archive format designed for high compression ratios and fast real-time processing. It functions as a real-time data compressor and multi-threaded compression engine capable of distributing workloads across multiple CPU cores to increase throughput. The system features a dictionary-based compressor that trains on sample data to improve the compression ratio and speed of small files. It also provides long distance pattern matching to identify repeated sequences across large files. The library covers a broad range of capabilities including st
This is a high-performance C library for data compression, but it is not a Java library and would require JNI or a wrapper to be used within a Java application.
This project provides a lossless compression algorithm and a byte-oriented compression library designed for high-speed data reduction and maximum decompression speed. It functions as a stream-oriented compression engine, a software library for encoding and decoding data blocks, and a command-line tool for managing interoperable compressed frames. The system distinguishes itself through the use of predefined pattern dictionaries to improve compression ratios for small data sets and small packets. It supports multiple processing modes, including high-speed block compression for minimal latency
This is a high-performance C library for the LZ4 algorithm, which serves as a foundational building block for compression rather than a Java-native library for archiving tasks.