Microsoft for Java Developers

News, updates, and insights for Java development with Microsoft tools, Azure services, and OpenJDK.

Featured posts

Java OpenJDK October 2025 Patch & Security Update
Oct 29, 2025
Post comments count 0
Post likes count 0

Java OpenJDK October 2025 Patch & Security Update

Derek Keeler
Derek Keeler

Hello Java customers! We are happy to announce the latest July 2025 patch & security update release for the Microsoft Build of OpenJDK. Download and inst...

Java

Latest posts

Java at Microsoft: 2025 Year in Review
Dec 31, 2025
Post comments count 2
Post likes count 1

Java at Microsoft: 2025 Year in Review

Bruno Borges
Bruno Borges

A breakthrough year for modernization, AI‑assisted development, Agentic AI development, and platform innovation 2025 was one of the most significant years yet for Java at Microsoft. From the arrival of OpenJDK 25 as the newest Long‑Term Support (LTS) release, to AI‑powered modernization workflows with GitHub Copilot app modernization, to Agentic AI development in Microsoft AI Foundry with Java frameworks like LangChain4j, Spring AI, Quarkus AI, and Embabel, with major Visual Studio Code and Azure platform investments. Microsoft deepened its commitment across the entire Java ecosystem. Java 25: A New LTS Era B...

Beyond Ergonomics: How the Azure Command Launcher for Java Improves GC Stability and Throughput on Azure VMs
Dec 16, 2025
Post comments count 0
Post likes count 2

Beyond Ergonomics: How the Azure Command Launcher for Java Improves GC Stability and Throughput on Azure VMs

Monica Beckwith
Monica Beckwith

In our previous blog we introduced Azure Command Launcher for Java () —a safe, resource-aware way to launch the JVM without hand-tuning dozens of flags. This follow-up shares performance results, focusing on how affects G1 behavior, heap dynamics, and pause characteristics under a long-running, allocation-intensive workload: SPECjbb 2015 (JBB). Test bed: 4-vCPU, 16-GB Azure Linux/Arm64 VM running the Microsoft Build of OpenJDK. JDKs exercised: Validated on JDK 17 (17.0.17), 21 (21.0.9), and 25 (25.0.1); all figures in this post are from the JDK 17 runs. Trends on 21/25 matched the 17 results. How we ran...

From Complexity to Simplicity: Intelligent JVM Optimizations on Azure
Nov 20, 2025
Post comments count 0
Post likes count 4

From Complexity to Simplicity: Intelligent JVM Optimizations on Azure

Monica Beckwith
Monica Beckwith

Introduction As cloud-native architectures scale across thousands of containers and virtual machines, Java performance tuning has become more distributed, complex, and error-prone than ever. As highlighted in our public preview announcement, traditional JVM optimization relied on expert, centralized operator teams manually tuning flags and heap sizes for large application servers. This approach simply doesn’t scale in today’s highly dynamic environments, where dozens—or even hundreds—of teams deploy cloud-native JVM workloads across diverse infrastructure. To address this, Microsoft built Azure Command Launch...

Announcing the Public Preview of Azure Command Launcher for Java
Nov 20, 2025
Post comments count 0
Post likes count 2

Announcing the Public Preview of Azure Command Launcher for Java

Bruno Borges
Bruno Borges

Today we are announcing the Public Preview of the Azure Command Launcher for Java, a new tool that helps developers, SREs, and infrastructure teams standardize and automate JVM configuration on Azure. The goal is to simplify tuning practices and reduce resource waste across Java workloads. JVM Tuning in a Cloud-Native World Before the rise of microservices, Java applications were typically deployed as Java EE artifacts (WARs or EARs) on managed application servers. Ops teams were responsible for configuring and tuning the JVM, often on powerful servers that hosted multiple applications on a single Java EE app...

Introducing Major New Agentic Capabilities for GitHub Copilot in JetBrains and Eclipse
Nov 18, 2025
Post comments count 0
Post likes count 0

Introducing Major New Agentic Capabilities for GitHub Copilot in JetBrains and Eclipse

Nick Zhu
Nick Zhu

GitHub Copilot is taking a major step forward with expanded, deeply integrated support for JetBrains and Eclipse — bringing a new generation of agentic, intelligent capabilities directly into your favorite Java IDEs. This release strengthens Copilot’s cross-IDE experience, unifies agentic workflows, and unlocks more powerful automation to help developers code faster, modernize confidently, and stay in flow.  New Agentic Capabilities This is the year of the agents. Developers need more control than ever—both in how they work with agents and how agents adapt to their workflows. After introducing Custom Agents in ...

JDConf 2026 Is Coming With Modern Solutions for an Agentic World
Nov 4, 2025
Post comments count 0
Post likes count 0

JDConf 2026 Is Coming With Modern Solutions for an Agentic World

Bruno Borges
Bruno Borges

Technology is accelerating faster than ever, and developers are once again at the helm, shaping the future of applications, intelligence, and enterprise systems. With the rise of large language models (LLMs), agent-oriented architectures, and AI-driven development paradigms, Java developers find themselves in a uniquely powerful position to modernize code already powering critical systems, and to build the software of tomorrow. Java remains one of the world’s most trusted languages for enterprise, cloud, mobile and mission-critical systems. As James Governor, from developer analyst firm RedMonk, recently...

Java OpenJDK October 2025 Patch & Security Update
Oct 29, 2025
Post comments count 0
Post likes count 0

Java OpenJDK October 2025 Patch & Security Update

Derek Keeler
Derek Keeler

Hello Java customers! We are happy to announce the latest July 2025 patch & security update release for the Microsoft Build of OpenJDK. Download and install the binaries today. Check our release notes page for details on fixes and enhancements. The source code of our builds is available now on GitHub for further inspection: jdk25u, jdk21u, jdk17u, jdk11u. Microsoft Build of OpenJDK specific updates OpenJDK25 OpenJDK21 OpenJDK17 OpenJDK11 Summary of Upstream Updates OpenJDK 25 OpenJDK 21 OpenJDK 17 OpenJDK 11 ...

MCP Registry and Allowlist Controls for Copilot in JetBrains and Eclipse Now in Public Preview
Oct 28, 2025
Post comments count 0
Post likes count 0

MCP Registry and Allowlist Controls for Copilot in JetBrains and Eclipse Now in Public Preview

Jialuo Gan
Jialuo Gan

MCP registry and allowlist controls for GitHub Copilot in JetBrains IDEs and Eclipse are now available in public preview in nightly/pre-release builds. What’s new MCP Registry An MCP Registry is a directory of Model Context Protocol (MCP) servers. For users of JetBrains IDEs and Eclipse, you can now configure your MCP Registry and browse available MCP servers directly within your IDE. This greatly streamlines setup and provides a seamless experience for discovering and managing MCP servers right from the editor. Allow List Controls As an enterprise or organization owner, you can configure an MCP Registry...

Java and AI for Beginners: a practical video series for Java
Oct 28, 2025
Post comments count 0
Post likes count 1

Java and AI for Beginners: a practical video series for Java

Brian Benz
Brian Benz

If you're looking for a clear, no-nonsense path into generative AI on Java, this series is for you.  Microsoft's Java and AI for Beginners video series is a set of short tutorials that introduce the concepts, tooling, and patterns you need to get started at a pace that respects your time and experience. What the series covers We help you through foundational ideas first and then move into hands-on examples: Each video is short and focused. Watch them in order if you are new to the space, or skip into the topics that match your immediate needs. Integrations you w...

Microsoft’s OpenJDK builds now ready for Java 25
Sep 29, 2025
Post comments count 0
Post likes count 2

Microsoft’s OpenJDK builds now ready for Java 25

Bruno Borges
Bruno Borges

We’re excited to announce that the Microsoft Build of OpenJDK binaries are now available for Java 25. As always, our builds aim to provide a high-quality, production-ready build of OpenJDK, with binaries tested across platforms (Windows, Linux, macOS) and backed by our support and release pipelines. With this release, we invite developers, teams, and organizations to start migrating to Java 25, and in doing so, to take advantage of the many enhancements that have accumulated since Microsoft Build of OpenJDK 21 (our previous LTS release). Microsoft Build of OpenJDK 25 is fully supported for deployment on Azure ...

Unlocking MCP in JetBrains: How Copilot Uses Sampling, Prompts, Resources, and Elicitation
Sep 26, 2025
Post comments count 1
Post likes count 0

Unlocking MCP in JetBrains: How Copilot Uses Sampling, Prompts, Resources, and Elicitation

Hang Wang
Hang Wang

With the enhanced capability of the MCP on JetBrains, you can now bring prompts, resources, and even interactive tools directly into your IDE interacting with MCP. This means more flexible workflows, deeper context, and smoother collaboration between Copilot and your coding environment.  Let’s take a look at what you can do today with MCP Sampling, Prompts, Resources, and Elicitation. Prerequisites  To easily enable everything, you can copy and paste these settings into your `mcp.json` file:  MCP Sampling – Fine-Tune How Copilot Responds  With MCP Sampling, you can...

Building a Runtime JAR inspector in 10 hours
Sep 8, 2025
Post comments count 0
Post likes count 0

Building a Runtime JAR inspector in 10 hours

Bruno Borges
Bruno Borges

Last Friday I was reviewing our backlog items in the Java Engineering Group, and found an idea we had when Log4Shell happened. To this day, there is still no main stream solution to "find in production where a given JAR is being used". Why runtime truth matters (Log4Shell) When Log4Shell hit, lots of teams hunted for log4j through source control and CI pipelines. Helpful, but incomplete. Two realities get in the way: Finding where a vulnerable artifact is present in production, at runtime, and whether is being used, is far more important than monitoring source code and build pipelines. We s...

“HTTP header exceeding 8,192 bytes” error when using the Azure SDK for Java
Aug 6, 2025
Post comments count 0
Post likes count 1

“HTTP header exceeding 8,192 bytes” error when using the Azure SDK for Java

Josephine Qiu
Josephine Qiu

A recent issue was identified in the azure-resourcemanager libraries for Java regarding HTTP headers exceeding 8,192 bytes. Following analysis, this was addressed within the Azure SDK for Java by increasing the maximum response header size limit of “reactor-netty-http” to 256 KB, accommodating larger headers. To benefit from this mitigation, it is necessary to upgrade azure-core-http-netty to version 1.15.12 or later. Alternatively, if you are utilizing the BOM, please use version 1.2.36 or above. This issue originated from an update in Azure Resource Manager to add a cryptographic token to long-running-operat...

Generative AI for Beginners – Java Edition launched
Aug 6, 2025
Post comments count 0
Post likes count 1

Generative AI for Beginners – Java Edition launched

Rory Preddy
Rory Preddy

IN ONE hour, all ONLINE, complete our new training for Generative AI for Beginners – Java Edition - part of the incredible Microsoft Generative AI series - Python, .NET and JavaScript. In this training get first-hand experience with Core Generative AI Techniques and Tools we’re using inside Microsoft: Quick Start 📅Book now and Learn LIVE with FREE Training! 👉 Generative AI for Beginners - Java Edition | Microsoft Reactor

Java OpenJDK July 2025 Patch & Security Update
Jul 21, 2025
Post comments count 0
Post likes count 1

Java OpenJDK July 2025 Patch & Security Update

Derek Keeler
Derek Keeler

Hello Java customers! We are happy to announce the latest July 2025 patch & security update release for the Microsoft Build of OpenJDK. Download and install the binaries today. Check our release notes page for details on fixes and enhancements. The source code of our builds is available now on GitHub for further inspection: jdk21u, jdk17u, jdk11u. Microsoft Build of OpenJDK specific updates OpenJDK21 OpenJDK17 OpenJDK11 Summary of Upstream Updates OpenJDK 21 OpenJDK 17 OpenJD...

Microsoft and LangChain4j: A Partnership for Secure, Enterprise-Grade Java AI Applications
Jul 16, 2025
Post comments count 0
Post likes count 2

Microsoft and LangChain4j: A Partnership for Secure, Enterprise-Grade Java AI Applications

Julien Dubois
Julien Dubois

The artificial intelligence landscape presents unprecedented opportunities for Java developers. With decades of experience building robust enterprise applications using Spring, Quarkus and Jakarta EE, Java developers are uniquely positioned to create sophisticated AI solutions. The emergence of specialized AI libraries like LangChain4j enables them to leverage their existing expertise while building secure, scalable, and maintainable AI applications. Introducing LangChain4j: A Comprehensive Java AI Library LangChain4j represents a significant advancement in Java-based AI development. This community-driven l...

Customize GitHub Copilot in JetBrains with Custom Instructions
Jul 9, 2025
Post comments count 2
Post likes count 1

Customize GitHub Copilot in JetBrains with Custom Instructions

Hang Wang
Hang Wang

Today, you can use Custom Instructions in JetBrains to speed up development while staying aligned with your team's coding standards and personal preferences. Whether you're working on a solo project or part of a larger team, adhering to consistent coding standards is essential. Custom Instructions provide a mechanism to reinforce team coding guidelines or embed personal coding preferences. Example: Make custom instructions for newly generated code Make sure you have the latest version of GitHub Copilot installed on you JetBrains IDE. Then, navigate to the GitHub Copilot settings to find the Custom Inst...

What’s New for Java Developers in Azure Cosmos DB (NoSQL)?
Jun 30, 2025
Post comments count 0
Post likes count 0

What’s New for Java Developers in Azure Cosmos DB (NoSQL)?

Bruno Borges
Bruno Borges

The Java ecosystem around Azure Cosmos DB has quietly grown a lot stronger in the first half of 2024. And the updates are especially exciting if you’re working on scalable apps or exploring GenAI workloads. From new support for vector search and indexing, to better throughput management and improved integrations with Apache Kafka, Spring Data, and Apache Spark, there’s a lot to unpack. If you’re building Java apps with Cosmos DB or just curious about how far the NoSQL SDK has come, you’ll want to check out this update. 👉 Continue reading: Latest NoSQL Java Ecosystem Updates (June 2024 – June 2025)

Anthropic Claude Sonnet 4 and Opus 4 Now Available in GitHub Copilot for JetBrains and Eclipse
Jun 26, 2025
Post comments count 0
Post likes count 0

Anthropic Claude Sonnet 4 and Opus 4 Now Available in GitHub Copilot for JetBrains and Eclipse

Jialuo Gan
Jialuo Gan

Anthropic Claude Sonnet 4 and Claude Opus 4 are now available in GitHub Copilot Chat for JetBrains IDEs and Eclipse. Model Availability✨ For full details, please see this documentation. How to Get Started🚀 Join the Discussion💬 Your feedback drives improvements. Let us know what you think using the in-product feedback option, or share your thoughts in the following channels:

Connect Spring AI to Local AI Models with Foundry Local
Jun 17, 2025
Post comments count 0
Post likes count 1

Connect Spring AI to Local AI Models with Foundry Local

Manfred Riem Bruno Borges
Manfred,
Bruno

What is Azure AI Foundry and Foundry Local? Azure AI Foundry is Microsoft's comprehensive platform for enterprise AI development and deployment, enabling organizations to build, customize, and operate AI solutions at scale. It provides tools, services, and infrastructure to develop, fine-tune and deploy AI models in production environments with enterprise-grade security and compliance. Foundry Local is the desktop companion to Azure AI Foundry that brings powerful AI model inference to your local machine. It's an open-source tool that provides an OpenAI-compatible API, allowing developers to run, test, a...

Monitor your Quarkus native application on Azure
Jun 12, 2025
Post comments count 0
Post likes count 0

Monitor your Quarkus native application on Azure

Jean Bisutti Bruno Baptista
Jean,
Bruno

Introduction Quarkus is a general-purpose Java framework focused on efficient use of resources, fast startup, and rapid development. It allows developers to create and run services in the Java Virtual Machine (JVM) or native binary executables (native mode). In this blog post we are going to focus on using Quarkus to create and monitor a native mode Quarkus application on Azure. A simple service will be created from scratch to demonstrate the capability of sending OpenTelemetry data to Azure.  Why native? Quarkus Native Mode refers to building and running a Quarkus application as a native binary executab...

Jakarta EE and Quarkus on Azure – June 2025
May 28, 2025
Post comments count 0
Post likes count 0

Jakarta EE and Quarkus on Azure – June 2025

Josephine Qiu
Josephine Qiu

Hi everyone, welcome to the June 2025 update for Jakarta EE and Quarkus on Azure. It covers topics such as DevServices support of Quarkus Azure Extension, and comprehensive guides on implementing Quarkus applications monitoring and Liberty applications monitoring. If you're interested in providing feedback or collaborating on migrating Java workloads to Azure with the engineering team developing Jakarta EE and MicroProfile on Azure solutions, please complete this short survey on Jakarta EE migration. The team of product managers, architects, and engineers will promptly get in touch with you to initiate close col...

Announcing Azure Command Launcher for Java
May 20, 2025
Post comments count 0
Post likes count 4

Announcing Azure Command Launcher for Java

Bruno Borges
Bruno Borges

Optimizing JVM Configuration for Azure Deployments Tuning the Java Virtual Machine (JVM) for cloud deployments is notoriously challenging. Over 30% of developers tend to deploy Java workloads with no JVM configuration at all, therefore relying on the default settings of the HotSpot JVM. The default settings in OpenJDK are intentionally conservative, designed to work across a wide range of environments and scenarios. However, these defaults often lead to suboptimal resource utilization in cloud-based deployments, where memory and CPU tend to be dedicated for application workloads (use of containers and VMs) but s...

Vibe coding with GitHub Copilot: Agent mode and MCP support in JetBrains and Eclipse
May 19, 2025
Post comments count 1
Post likes count 4

Vibe coding with GitHub Copilot: Agent mode and MCP support in JetBrains and Eclipse

Hang Wang
Hang Wang

Today, we're excited to announce that GitHub Copilot Agent Mode and MCP support are now in public preview for both JetBrains and Eclipse! Whether you're working in IntelliJ IDEA, PyCharm, WebStorm or Eclipse, you can now access Copilot’s intelligent agent features and seamlessly manage your project workflows, all from within your IDE.  In this post, we’ll demonstrate how Agent Mode and MCP support can supercharge real-world development workflows through a collaborative feature development story. Meet Adrian, a backend-focused Java developer who primarily uses JetBrains, and Lucy, a full-stack enthusiast wo...

Announcing Public Preview of the GitHub Copilot app modernization for Java
May 19, 2025
Post comments count 0
Post likes count 3

Announcing Public Preview of the GitHub Copilot app modernization for Java

Nick Zhu
Nick Zhu

Modernizing Java applications and migrating to the cloud is often a complex, time-consuming, and fragmented process. GitHub Copilot app modernization for Java is a powerful solution designed to simplify and accelerate your journey to the cloud. Available now in Public Preview as a Visual Studio Code extension, GitHub Copilot app modernization for Java provides an intelligent, guided approach to Java upgrades and modernization—automating repetitive tasks, improving consistency, and reducing risk. Six Core Value Pillars 1.Intelligent Issue Analysis & Recommendation  Modernization starts with insight. Whe...

The State of Coding the Future with Java and AI – May 2025
May 12, 2025
Post comments count 0
Post likes count 1

The State of Coding the Future with Java and AI – May 2025

Asir V Selvasingh
Asir V Selvasingh

Software development is changing fast, and Java developers are right in the middle of it - especially when it comes to using Artificial Intelligence (AI) in their apps. This report brings together feedback from 647 Java professionals to show where things stand and what is possible as Java and AI come together. One of the biggest takeaways is this: Java developers do not need to be experts in AI, machine learning, or Python. With tools like the Model Context Protocol (MCP) Java SDK, Spring AI, and LangChain4j, they can start adding smart features to their apps using the skills they already have. Whether it ...

Important Updates to Container Images of Microsoft Build of OpenJDK
Apr 23, 2025
Post comments count 3
Post likes count 0

Important Updates to Container Images of Microsoft Build of OpenJDK

Derek Keeler Bruno Borges
Derek,
Bruno

Mariner Linux 2.0 will reach its End-Of-Life (EOL) in July of 2025 and will be replaced with Azure Linux (version 3.0). To ensure a smooth transition for our customers and partners, the Java Engineering Group (DevDiv JEG) behind the Microsoft Build of OpenJDK has developed a migration aligned with this timeline. This strategy takes effect on June 30, 2025, coinciding with the official EOL date for Mariner Linux 2.0. Our Strategy This way we can ensure a reasonable balance between security by default and alternatives for our customers who need to roll back to previous versions despite...