Microsoft for Java Developers
News, updates, and insights for Java development with Microsoft tools, Azure services, and OpenJDK.
Latest posts
Java on Visual Studio Code Update – December 2022
Hi everyone, we are near the end of year. Looking back on 2022, there are a few highlights that we wanted to share with you all: Highlights from 2022 Major Visualization Experience Upgrade for Spring Boot Extensions Starting earlier this year, we began to make a series of improvements on Spring Boot dashboard, aiming to increase Spring developer's productivity on Visual Studio Code. This includes the beans and endpoints mapping view, more live information display for Spring applications and the brand new memory as a graph. We hope that these improvements make it easier to develop Spring applications and observ...
Java on Azure Tooling Update – November 2022
Hi everyone, welcome back to the November update of Java on Azure Tooling. In this update, we will introduce remote debugging support of Azure Spring Apps and Azure Function Apps. In addition, we have made some enhancements for users to configure App Settings more easily. Please download and install the Azure Toolkit for IntelliJ. We hope you like these features and enjoy the experience with our Azure toolkit. So let us get started. Azure Toolkit for IntelliJ Improvements Remote debugging Support of Azure Spring Apps and Azure Function Apps As we have talked about in October blog, remote debugging is highly ...
What’s the deal with humongous objects in Java?
As a Software Engineer in Microsoft’s Java Engineering Group, part of my job is to analyze and improve the performance of Java’s garbage collectors. As a Java application runs, the garbage collector is responsible for allocating objects on the heap and freeing up heap space when those objects are no longer live. In this blog post, I’ll focus specifically on how the GC handles different volumes of live data and objects of various sizes. If you're running JDK 11 or later (and you should be), the default garbage collector is the Garbage First Garbage Collector (G1 GC). G1 is a regionalized collector, meaning tha...
Two million Java developers on Visual Studio Code! November 2022 Update
Hi everyone, we are excited to share that now there are over two million Java developers on Visual Studio Code, this wouldn't be possible without all the support from the community and our users, so thank you! For November update, we are bringing you new code editing feature such as postfix completion, optimized organize import. In addition, debugger gets a nice update as we support a new feature called “Step Into Target”. Lastly, we made some visual enhancements to the Spring components, so let’s get into it. Postfix Completion Postfix completion lets you add code snippets around an expression you’ve just t...
Java on Azure Tooling Update – October 2022
Hi everyone, welcome back to the October update of Java on Azure Tooling. In this update, we will introduce our new roadmap in the next few months. In addition, we have made some improvements for developers to use deployment slots for Azure Functions in IDEs directly with our latest release. Please download and install the Azure Toolkit for IntelliJ. We hope you like these features and enjoy a smooth experience with our Azure toolkit. So let us get started. Roadmap Update Let’s talk about our investments for the next few months of Java on Azure Tooling. Our goal is to provide a seamless code-to-cloud experien...
Microsoft Build of OpenJDK – October 2022 PSU Release
We are happy to announce the latest patch & security update release for the Microsoft Build of OpenJDK. You can find the usual updates from the OpenJDK upstream community: And you can also see the additional work that our team has put in place in our builds through the release notes. Starting with this release, developers can also see the exact changes we specifically made to our builds by inspecting the source code in our newly established Microsoft repositories for jdk17u and jdk11u. New Experimental Feature In this release, we have added a new experimental feature to improve the results of E...
Java on Visual Studio Code Update – October 2022
Hi everyone, welcome to the October update of Visual Studio Code Java. We have brought a lot of improvements in code editing and debugging experience this time, so let's get started! Debugging Experience Enhancements Visual indicator for inline breakpoints Consider a line like this: Stream.of("Frank").map(name -> name.toUpperCase()).forEach((item -> System.out.println(item)); Now when you set a breakpoint on this line, Visual Studio Code will automatically identify the lambda expressions in this line, and visualize them with grey dots. If you want to further set inline breakpoints on those lambda...
Java on Azure Tooling Update – September 2022
Hi everyone, welcome back to September update of Java on Azure Tooling. In this update, we will introduce the Azure Cosmos DB Support, and Azure Virtual Machine Enhancement. In addition, we have made some improvements for users to create/update the dependencies with Azure SDK Reference Book. Please download and install the Azure Toolkit for IntelliJ. We hope you like these features and enjoy the smooth experience with our Azure toolkit. So let us get started. Azure Toolkit for IntelliJ Improvements Azure Cosmos DB Support Database management support is always one of our key investment areas. Azure Cosmos DB ...
Java on Visual Studio Code Update – September 2022
Hi everyone, welcome to the September update of Visual Studio Code Java. We have tons of exciting new features this time, and there are improvements in many areas such as project import, Spring support, remote debugging and unit testing, so let's get started! Protobuf (Protocol Buffer) project support Protocol Buffers (Protobuf) is a free and open-source cross-platform data format used to serialize structured data. Previously, if a Java project involves protobuf, our Java extensions won't work very well and you will be likely to encounter lots of unrecognized classes. This is because our extensions couldn't de...