Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Mirror of Apache Jackrabbit Oak
Java Other
Failed to load latest commit information.
oak-auth-external OAK-2872 ExternalLoginModule should clear state when login was not su…
oak-auth-ldap Use correct copyright notice
oak-authorization-cug Update trunk version to 1.4-SNAPSHOT
oak-blob-cloud OAK-2827: [oak-blob-cloud] Test Failures: Add joda-time dependency ex…
oak-blob Update trunk version to 1.4-SNAPSHOT
oak-commons OAK-2895 - Avoid accessing binary content if the mimeType is excluded…
oak-core OAK-2901 - Allow RDBBlobStoreTest to run against multiple DB types
oak-doc OAK-301- Document Oak
oak-http Update trunk version to 1.4-SNAPSHOT
oak-it OAK-2838 - Test failure: OSGiIT
oak-jcr OAK-2862: CompactionMap#compress() inefficient for large compaction maps
oak-js OAK-103: JavaScript bindings for Oak
oak-lucene OAK-2247 - CopyOnWriteDirectory implementation for Lucene for use in …
oak-parent OAK-2899: Update to Jackrabbit 2.10.1
oak-pojosr Update trunk version to 1.4-SNAPSHOT
oak-run OAK-2887 - Add support for generating mongo export command to oak-mongo
oak-solr-core OAK-2832: Test failure: DefaultAnalyzersConfigurationTest
oak-solr-osgi Update trunk version to 1.4-SNAPSHOT
oak-tarmk-standby OAK-2861 TARMK Cold Standby better binary decoding
oak-upgrade OAK-2657 - Repository Upgrade could shut down the source repository e…
.gitignore Ignore IntelliJ project and workspace files
.travis.yml OAK-2629: Cleanup Oak Travis jobs
LICENSE.txt OAK-1: Setup basic build structure
NOTICE.txt Update trunk version to 1.1-SNAPSHOT OAK-2697 : Retire oak-mk-api and oak-mk (add issue reference to READM…
RELEASE-NOTES.txt Update release notes for Oak 1.2 OAK-641: Improved benchmark tooling
assembly.xml OAK-42: Prepare for first release
pom.xml OAK-2700 : Cleanup usages of mk-api

Jackrabbit Oak - the next generation content repository

Jackrabbit Oak is a scalable, high-performance hierarchical content repository designed for use as the foundation of modern world-class web sites and other demanding content applications.

The Oak effort is a part of the Apache Jackrabbit project. Apache Jackrabbit is a project of the Apache Software Foundation.

Getting Started

To get started with Oak, build the latest sources with Maven 3 and Java 6 (or higher) like this:

mvn clean install

To enable all integration tests, including the JCR TCK, use:

mvn clean install -PintegrationTesting

Before committing changes or submitting a patch, please make sure that the above integration testing build passes without errors. If you like, you can enable integration tests by default by setting the OAK_INTEGRATION_TESTING environment variable.

MongoDB integration

Parts of the Oak build expects a MongoDB instance to be available for testing. By default a MongoDB instance running on localhost is expected, and the relevant tests are simply skipped if such an instance is not found. You can also configure the build to use custom MongoDB settings with the following properties (shown with their default values):

Note that the configured test databases will be dropped by the test cases.


The build consists of the following main components:

  • oak-parent - parent POM
  • oak-doc - Oak documentation
  • oak-commons - shared utility code
  • oak-core - Oak repository API and implementation
  • oak-jcr - JCR binding for the Oak repository
  • oak-sling - integration with Apache Sling
  • oak-solr-core - Apache Solr indexing and search
  • oak-solr-embedded - Apache Solr on an embedded Solr instance
  • oak-solr-remote - Apache Solr on an remote (HTTP) Solr instance
  • oak-http - HTTP binding for Oak
  • oak-lucene - Lucene-based query index
  • oak-run - runnable jar packaging
  • oak-pojosr - integration with PojoSR
  • oak-upgrade - tooling for upgrading Jackrabbit repositories to Oak
  • oak-it - integration tests
    • oak-it/osgi - integration tests for OSGi


The following components have been moved to the Jackrabbit Attic:

  • oak-mk-api - MicroKernel API (deprecated, see OAK-2701)
  • oak-mk - MicroKernel implementation (see OAK-2702)
  • oak-mk-remote - MicroKernel remoting (see OAK-2693)
  • oak-it/mk - integration tests for MicroKernel


(see LICENSE.txt for full license details)

Collective work: Copyright 2014 The Apache Software Foundation.

Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Something went wrong with that request. Please try again.