View on GitHub


An OpenJDK release maintained and supported by SAP


This project contains a downstream version of the OpenJDK project. It is used to build and maintain a SAP supported version of OpenJDK for SAP customers who wish to use OpenJDK in their production environments.

We want to stress the fact that this is clearly a friendly fork. One reason why we need this project is the need to quickly react on customer problems with new and fixed versions without having to wait on the upstream project or other distributors/packagers. The second reason for the existence of this project is to showcase and bring over features from our commercially licensed, closed source SAP JVM into the OpenJDK which can not be integrated upstream in the short-term.

SAP is committed to ensuring the continued success of the Java platform. We are members of the JCP Executive committee since 2001 and recently served in the JSR 379 (Java SE 9) and JSR 383 (Java SE 18.3) Expert Groups. SAP is also one of the biggest external contributors to the OpenJDK project (currently leading the PowerPC/AIX and s390 porting projects) and will remain fully committed to the OpenJDK. Our intention is to bring as many features as possible into the upstream project and keep the diff of this project as small as possible.

Download and Installation

You can check for all available releases (including nightly snapshots). The latest release for any SapMachine major version can be found at (e.g. SapMachine 10).

Unpack the archives and set JAVA_HOME / PATH environment variables accordingly. Currently this project supports the following operating systems/CPU architectures:

If you want to build the project yourself, please follow the instructions in

Debian / Ubuntu

Alternatively, you can use our .deb packages if you’re on Debian or Ubuntu:

sudo bash
wget -q -O - | apt-key add -
echo "deb ./" >> /etc/apt/sources.list
apt-get update
apt-get install sapmachine-10-jre

Alpine Linux

To install SapMachine on Alpine Linux, you can use our .apk packages:

FROM alpine:3.5

RUN apk update; \
    apk add bash; \
    apk add ca-certificates; \
    apk add wget;

WORKDIR /etc/apk/keys
RUN wget


RUN echo "" >> /etc/apk/repositories

RUN apk update; \
    apk add sapmachine-10-jre;


Finally, we also provide Docker images for various versions of the SapMachine.

Debian / Ubuntu
docker pull sapmachine/jdk10:latest
docker run -it sapmachine/jdk10:latest java -version
Alpine Linux
docker pull sapmachine/jdk10:latest-alpine
docker run -it sapmachine/jdk10:latest-alpine java -version

Repository setup

This repository contains several branches. The default master branch only contains this README file. The jdk/… branches are direct mirrors of the corresponding OpenJDK Mercurial repositories (e.g. the jdk/jdk branch is a mirror of Finally, the sapmachine/… branches are the actual source of the SapMachine releases with specific bug fixes and enhancements. We regularly (usually on a weekly base) merge the jdk/ branches into the corresponding sapmachine/ branches.

How to obtain support

Please create a new issue if you find any problems.


We currently do not accept external contributions for this project. If you want to improve the code or fix a bug please consider contributing directly to the upstream OpenJDK project. Our repositories will be regularly synced with the upstream project so any improvements in the upstream OpenJDK project will directly become visible in our project as well.


This project is run under the same licensing terms as the upstream OpenJDK project. Please see the LICENSE file in the top-level directory for more information.