Skip to content

Commit 358ee50

Browse files
committed
update readme
1 parent c833ad3 commit 358ee50

File tree

1 file changed

+13
-36
lines changed

1 file changed

+13
-36
lines changed

README.md

Lines changed: 13 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,16 @@
11
# LZ4 Java
22

3+
*Community-maintained fork of https://github.com/lz4/lz4-java to patch CVE‐2025‐12183. Maven coordinates:*
4+
5+
```xml
6+
<dependency>
7+
<groupId>at.yawk.lz4</groupId>
8+
<artifactId>lz4-java</artifactId>
9+
</dependency>
10+
```
11+
312
LZ4 compression for Java, based on Yann Collet's work available at
4-
http://code.google.com/p/lz4/.
13+
https://github.com/lz4/lz4.
514

615
This library provides access to two compression methods that both generate a
716
valid LZ4 stream:
@@ -155,40 +164,8 @@ speed at which they compress/decompress/hash bytes.
155164

156165
# Build
157166

158-
## Requirements
159-
160-
- JDK version 7 or newer,
161-
- ant version 1.10.2 or newer,
162-
- ivy.
163-
164-
If ivy is not installed yet, ant can take care of it for you, just run
165-
`ant ivy-bootstrap`. The library will be installed under ${user.home}/.ant/lib.
166-
167-
You might hit an error like the following when the ivy in ${user.home}/.ant/lib is old. You can delete it and then run `ant ivy-bootstrap` again to install the latest version.
168-
```
169-
[ivy:resolve] ::::::::::::::::::::::::::::::::::::::::::::::
170-
[ivy:resolve] :: UNRESOLVED DEPENDENCIES ::
171-
[ivy:resolve] ::::::::::::::::::::::::::::::::::::::::::::::
172-
```
173-
174-
## Instructions
175-
176-
For lz4-java 1.5.0 or newer, first run `git submodule init` and then `git submodule update`
177-
to initialize the `lz4` submodule in `src/lz4`.
178-
179-
Then run `ant`. It will:
167+
Make sure you have a Java 7 installation in your [Maven toolchains.xml](https://maven.apache.org/guides/mini/guide-using-toolchains.html). You may also need a C compiler.
180168

181-
- generate some Java source files in `build/java` from the templates that are
182-
located under `src/build`,
183-
- compile the lz4 and xxhash libraries and their JNI (Java Native Interface)
184-
bindings,
185-
- compile Java sources in `src/java` (normal sources), `src/java-unsafe`
186-
(sources that make use of `sun.misc.Unsafe`) and `build/java`
187-
(auto-generated sources) to `build/classes`, `build/unsafe-classes` and
188-
`build/generated-classes`,
189-
- generate a JAR file called lz4-${version}.jar under the `dist` directory.
169+
Then, run `./mvnw verify`.
190170

191-
The JAR file that is generated contains Java class files, the native library
192-
and the JNI bindings. If you add this JAR to your classpath, the native library
193-
will be copied to a temporary directory and dynamically linked to your Java
194-
application.
171+
Building a full artifact with native libraries for all supported platforms is more complex. We do this through github actions.

0 commit comments

Comments
 (0)