OpenJDK Moves Its Mainline Development to GitHub

Earlier this month, the OpenJDK Community officially brought JDK 16 main-line development onto GitHub. The migration, part of an effort code-named Project Skara, marks a significant shift for one of the most influential codebases in the Java ecosystem.

Previously, OpenJDK relied on self-hosted Mercurial servers. The Skara project, led by the Java Platform Group at Oracle, involved transitioning not only the code itself but also the entire development team and its tooling over to Git and the GitHub platform.

More Than a Simple Repository Transplant

The migration was far more involved than a standard hg-fast-export followed by a git push. The OpenJDK team had to develop custom CLI tooling, establish bi-directional bridges with the OpenJDK mailing lists, and integrate with the project’s bug tracking system. Several OpenJDK sub-projects have also begun adopting GitHub Actions for their CI builds.

To make this all work, the team built integrations with the GitHub API as part of the Skara tooling. These tools are now open source and available within the OpenJDK GitHub organization.

A Familiar Home for Java

OpenJDK now sits alongside a number of GitHub’s most popular Java-based projects, including Gradle, Maven, jUnit5, Elasticsearch, Spring, Apache Spark, Selenium, and Helidon. With this move, OpenJDK can take advantage of GitHub features built for Java developers, such as free code scanning for security vulnerabilities, notifications and remediation for known security fixes, and semantic code navigation, which is itself powered by the Java-based Elasticsearch project.

Developers interested in contributing to OpenJDK can find more information at https://openjdk.java.net/contribute/.