It’s Been a Long Time Since Microsoft Brewed Its Own Java. But Now It’s Back, With the Microsoft Build of OpenJDK, Fit and Finished for Running in the Azure Cloud
A couple of weeks ago, an anonymous Twitter account recounted the tale of an almost-forgotten Microsoft April Fool’s prank from 1996. The prank involved seeding empty boxes of a “Microsoft Coffee” Java development tool across Seattle. Little did the pranksters know, Microsoft was already working on its own Java implementation, Visual J++.
This marked the beginning of Microsoft’s first foray into the Java world, which eventually led to litigation with Sun Microsystems over the support for nonstandard Windows APIs. Visual J++ was later removed from the Visual Studio suite of tools. This might have been the end of Microsoft’s Java journey, had it not been for the advent of Azure and Microsoft’s commitment to “go where the developers are.”
The second chapter of Microsoft’s Java story saw the return of Java to its platform, with tools for Visual Studio Code and support for Java on Azure. Now, more than a decade after Visual J++’s demise, Microsoft has introduced its own open-source Java distribution: the Microsoft Build of OpenJDK.
Microsoft, Java, and the Azure Cloud
So why is Microsoft embracing Java now? The answer lies in minimizing costs for Azure-hosted applications. Java’s history has seen it come under the ownership of Oracle, which licenses Java development tools and runtimes commercially. For those unwilling to pay for a commercial license, there’s the GPL 2-licensed OpenJDK, which follows the public Java SE (Standard Edition) specification. OpenJDK provides source and binaries for Java runtimes and the developer toolkit, with contributions from various companies and individuals, including Microsoft.
Supporting Java on the Azure cloud has naturally brought Microsoft back into the Java ecosystem. Recently, Microsoft announced its own build of OpenJDK 11, specifically targeted at developers working with Java on Azure. By using open-source Java, Microsoft avoids the complex licensing issues associated with some Java implementations.
Benefits for Azure Users
Since Microsoft offers Java support for Azure services like Azure App Service, Azure Functions, and Azure Spring Cloud, using OpenJDK helps keep costs low. Microsoft can avoid passing on licensing costs to users, making it more economical for developers and enterprises to deploy Java applications on Azure. This strategy aligns with Microsoft’s broader goal of making Azure a versatile and cost-effective cloud platform.
A Strategic Move
This move is a strategic one for Microsoft, aligning with its broader vision of being a developer-first company. By offering a free, open-source Java distribution, Microsoft not only addresses cost concerns but also fosters a larger developer community around its cloud services. The Microsoft Build of OpenJDK provides a robust, reliable Java runtime that can be used across various Azure services, making it easier for developers to build and deploy applications.
Conclusion
Microsoft’s return to Java with its Azure-focused OpenJDK release signifies a full-circle moment in its relationship with the Java ecosystem. By embracing open-source Java, Microsoft not only mitigates licensing complexities but also strengthens its position in the cloud market. This development underscores Microsoft’s commitment to providing developers with the tools they need to succeed, reinforcing Azure’s appeal as a versatile and developer-friendly cloud platform