Blog archive

Microsoft Rolls Out OpenJDK Preview Release

Java developers got a preview today of the soon-to-be-released Microsoft build of OpenJDK, a Long-Term Support (LTS) distribution of Redmond's version of the ubiquitous open-source Java dev kit. This preview release includes binaries based on OpenJDK 11 for x64 platforms covering the three major operating systems: macOS, Linux, and Windows.

The Microsoft build of OpenJDK binaries for Java 11 are based on OpenJDK source code, the company says, following the same build scripts used by the Eclipse Adoptium project and tested against the Eclipse Adoptium Quality Assurance suite (including OpenJDK project tests. The binaries for Java 11 have passed the Java Technical Compatibility Kit (TCK) for Java 11, which is used to verify compatibility with the Java 11 specification. 

This build is free, of course, and designed to be a simple drop-in replacement for any OpenJDK distribution available in the Java ecosystem.

Microsoft is also publishing an early access release for Java 16 for Windows on ARM, the company says, based on the latest OpenJDK 16+36 release.

"Java is one of the most important programming languages used today," wrote Java Champ Bruno Borges, principal product manager for Microsoft's Java group, in a blog post. "Developers use Java to build everything from critical enterprise applications to hobby robots. At Microsoft, we’ve seen increasing growth in customer use of Java across our cloud services and development tools. We’re continually working to broaden and deepen our Java support for customers and developers."

As my colleague, David Ramel, pointed out in his report in our sister publication Visual Studio Magazine, "Microsoft jumped on the Java bandwagon in a big way back in 2019 by forming the Java Engineering Group in its Developer Division and acquiring jClarity to optimize Java workloads in its Azure cloud platform (despite the similarities between Java and Microsoft's own C#). "Last year, it ported OpenJDK for Windows 10 on Arm (AArch64)-based devices."

(We also covered Microsoft's assimilation into the OpenJDK ecosystem on ADTmag.)

Scott Sellers, CEO of open-source Java platform provider Azul Systems, sees the release as further evidence of a strong Java ecosystem.

“We believe that a thriving OpenJDK community is key to Java’s continued success," Sellers told me in an email, "and we welcome Microsoft to the impressive list of those offering builds of OpenJDK. This is great news for OpenJDK and Java in general, and further fuels the momentum as enterprises and developers move off proprietary Java offerings to OpenJDK distributions. We look forward to our ongoing collaboration with Microsoft in support of Azure’s Java users and of the Java user community as a whole."

Along with the upcoming Eclipse Adoptium builds of OpenJDK, the community of ongoing OpenJDK distributions currently includes Azul’s Zulu builds of OpenJDK, the Red Hat builds of OpenJDKAmazon’s Corretto builds of OpenJDKSAP’s SAPMachine builds of OpenJDKAlibaba’s Dragonwell builds of OpenJDK, and BellSoft’s Liberica builds of OpenJDK. (Eclipse Adoptium is a continuation of the AdoptOpenJDK project.)

"Our contributions to OpenJDK started small as we learned about the process and how to participate in a meaningful way," Borges wrote. "Over the past 18 months, we contributed more than 50 patches covering areas such as macOS packaging, build and infrastructure, GC fixes, and enhancements for Windows."

In fact, Java has become an essential technology at Microsoft, which once viewed Java's creator, Sun Microsystems, as a mortal enemy, and open-source in general as a danger to the industry. Microsoft currently deploys more than 500,000 Java Virtual Machines (JVMs) internally, the company says, excluding all Azure services and customer workloads with needs that go from back-end microservices to Big Data systems, message brokers, event streaming services, and gaming servers, the company says. More than 140,000 of these JVMs are already based on the Microsoft Build of OpenJDK.

Later this year, the Microsoft Build of OpenJDK will become the default distribution for Java 11 across Azure-managed services, Microsoft said in a statement. "Customers won’t have to perform any maintenance tasks, as the transition will be smooth and transparent through application deployments," the company says. "For all other Azure services, customers can bring their JDK of choice including Microsoft Build of OpenJDK. We will provide more updates on that in the coming months."

Posted by John K. Waters on April 6, 2021