Installation#

Apache DataFusion Java has not yet published a release. Until the first release, the only way to use the library is to build from source.

Requirements#

  • JDK 17 or newer. Set JAVA_HOME to point at it.

  • Rust toolchain (stable). Install via rustup.

Build from source#

git clone https://github.com/apache/datafusion-java.git
cd datafusion-java
make test

make test compiles the native Rust crate, then runs the JUnit tests against it. The native library must be built before the JVM tests can run.

The first build in a fresh checkout reaches out to raw.githubusercontent.com to fetch the DataFusion .proto files used to generate the datafusion-proto Java classes. Subsequent builds are offline; the download-maven-plugin cache under ~/.m2/repository/.cache/ satisfies them.

For development workflow details — running individual tests, the TPC-H integration test data, code style, and how to update the underlying DataFusion version — see the Contributor Guide.