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 observe the state of application when it's running.
Fundamental Coding Experience Improvements
Coding experience matters.
In 2022, We have made a series of important improvements to make Java developer's daily coding life easier than ever.
This includes postfix completion like IntelliJ IDEA, more shortcuts to generate code snippets, signature help optimization and so on.
Fundamental experience will continue to be our focus going forward.
Built-in Lombok support
Project Lombok is a popular and widely used Java library that is used to minimize or remove the boilerplate code.
Starting in July, our Java extensions can directly support projects that are using Lombok without installing any additional extensions.
We also want to thank @GabrielBB who started the original Lombok extension. You can find how to enable the Lombok support in this blog post.
Two million Java developers on Visual Studio Code
In November, we shared the news that there were two million Java developers on Visual Studio Code, this was an important milestone and we wanted to thank for all the support from the community, thank you!
In addition to the highlights from the 2022, let's look at the new features from the latest release!
December 2022 Update
Spring Boot -- Live Memory View
As the highlight of this month's update, we are introducing a new graphical memory view as the newest addition to the Spring Boot Dashboard. This feature is a result of collaboration between VMWare and Microsoft (special thanks to @vudayani-vmw, @martinlippert, and @Eskibear).
The memory view visualizes the memory and the garbage collection activities of a running Spring Boot application, much in the same way than the Spring Boot Dashboard already provides you with insights into running Spring Boot applications like active beans and request mappings.
There are four graphical real-time visualizations available under the memory view:
- Heap memory -- provides a stacked overview of the different heap areas, the total memory used and total memory size in the JVM
- Non-heap memory -- displays a stacked overview of the different non-heap regions in JVM relative to the total memory used and total memory size
- Gc Pauses -- depicts the frequency and duration of pause time for a GC event
- Garbage Collection -- displays the count of the GC events in the application
The memory view uses the Spring Boot Actuator data to gather the data from the running application, in the same way the other live data from running Spring Boot applications is gathered from running Spring Boot applications. So as soon as you have the Spring Boot Actuator dependency on your project, you will be able to use the live memory view.
In contrast to the beans and request mapping views of the Spring Boot perspective in VSCode, the memory view displays information from one specific running Spring Boot application only, it does not visualize the data from multiple running applications simultaneously. Therefore, you can select which application the view should visualize directly inside the view.
Here is a demo for this live memory view feature. Please note this feature is only available when you start an application from Spring Boot dashboard.
Annotation processing support in Gradle
Annotation processing is a Java compilation option which has been around since Java 5. It enables the generation of additional files during compilation, such as classes or documentation.
If we are using Gradle and want to use annotation processing, we do this by marking a particular dependency as part of the annotationProcessor dependency configuration. For example:
dependencies { annotationProcessor 'org.mapstruct:mapstruct-processor:1.3.1.Final' ... }
In our latest release, we have supported annotation processing in our Gradle for Java extension, so if you have annotationProcessor marked in your dependencies, you will be able to see your generated files during compilation.
User Experience -- Better Build Error Message Prompt
When our extensions detect a build error in the project, usually there is a pop-up that prompts the user to take certain actions. However, previously there are certain limitations with this pop-up. In our latest release, we have made improvements regarding two main scenarios.
- Projects without build tools (Unmanaged folder). Previously, if there are multiple folders in the workspace, and only one of the folders has errors, and the user is trying to run the other folders, we will still prompt the user with build error pop-up, which is not good user experience. We have improved this behavior and now we will now only prompt the build error message if the current folder has an issue. Here's a demo.
- Maven project. We have also made improvements for Maven project. If you have a multi-module project and there is an error in one of the dependencies, we will prompt you with the build error message. However, as soon as that error is fixed, the prompt will be gone and you will be able to run the application smoothly. Please see the demo below.
Last but not least, you might have noticed, the prompt now has changed to "Continue", "Always Continue", Fix" to be more straightforward to the user.
Visual Studio Code Java in 2023
Once again, we want to thank everyone for all the awesome support in the past year.
We wish everyone a merry Christmas and happy new year.
There will be many great updates coming in 2023, so please stay tuned, and see you in next year!
Install Extension Pack for Java
To use all features mentioned above, please download and install Extension Pack for Java on Visual Studio Code.
If you are a Spring developer working on a Spring Boot application, you can also download the Spring Boot Extension Pack for specialized Spring experience.
Feedback and suggestions
As always, your feedback and suggestions are very important to us and will help shape our product in future. There are several ways to give us feedback
- Leave your comment on this blog post
- Open an issue on our GitHub Issues page
- Send an email to: [email protected]
Resources
Here is a list of links that are helpful to learn Java on Visual Studio Code.
- Learn more about Java on Visual Studio Code.
[…] Les nouveautés de Java sur Visual Studio Code https://foojay.io/today/java-on-visual-studio-code-update-december–2022/ […]