Skip to main content
Version: 4.13.0

BookKeeper installation

You can install BookKeeper either by downloading a GZipped tarball package or cloning the BookKeeper repository.



You can download Apache BookKeeper releases from one of many Apache mirrors.


To build BookKeeper from source, clone the repository, either from the GitHub mirror or from the Apache repository:

# From the GitHub mirror
$ git clone

# From Apache directly
$ git clone git://

Build using Maven

Once you have the BookKeeper on your local machine, either by downloading or cloning it, you can then build BookKeeper from source using Maven:

$ mvn package

Since 4.8.0, bookkeeper introduces table service. If you would like to build and tryout table service, you can build it with stream profile.

$ mvn package -Dstream

You can skip tests by adding the -DskipTests flag when running mvn package.

Useful Maven commands

Some other useful Maven commands beyond mvn package:

mvn cleanRemoves build artifacts
mvn compileCompiles JAR files from Java sources
mvn compile spotbugs:spotbugsCompile using the Maven SpotBugs plugin
mvn installInstall the BookKeeper JAR locally in your local Maven cache (usually in the ~/.m2 directory)
mvn deployDeploy the BookKeeper JAR to the Maven repo (if you have the proper credentials)
mvn verifyPerforms a wide variety of verification and validation tasks
mvn apache-rat:checkRun Maven using the Apache Rat plugin
mvn compile javadoc:aggregateBuild Javadocs locally
mvn -am -pl bookkeeper-dist/server packageBuild a server distribution using the Maven Assembly plugin

You can enable table service by adding the -Dstream flag when running above commands.

Package directory

The BookKeeper project contains several subfolders that you should be aware of:

bookkeeper-serverThe BookKeeper server and client
bookkeeper-benchmarkA benchmarking suite for measuring BookKeeper performance
bookkeeper-statsA BookKeeper stats library
bookkeeper-stats-providersBookKeeper stats providers