Skip to content

Building

pirhoo edited this page Jun 17, 2026 · 3 revisions

To compile Extract you'll need JDK 17 (or newer), Maven, and Tesseract (in order to pass the OCR tests).

If you're on a Mac, you can install Homebrew then run brew install tesseract and brew install maven to install the latter two.

After that it's a matter of running the following in your terminal:

  • git clone git@github.com:ICIJ/extract.git to clone the repository
  • cd extract/
  • mvn install (or mvn install -DskipTests to build without running the tests)

Extract is a multi-module Maven project:

  • extract-lib — the reusable extraction engine. This is the artifact embedded by Datashare; see Extract and Datashare.
  • extract-cli — the command line application, which packages everything into a runnable extract.jar.

After a build you can run the CLI with java -jar extract-cli/target/extract.jar.

Executable

We were originally using Capsule to build system-specific executables, but abandoned that method because of the slow startup time and interference with console logging.

You can still create a shortcut executable with a small script in /usr/local/bin on Linux or Mac. For example:

#!/usr/bin/env bash
java -Djava.util.logging.config.file=/usr/local/etc/logging.properties -jar /opt/extract/extract-cli/target/extract.jar "$@"

Clone this wiki locally