作者:Nick Zhu - Senior Program Manager, Developer Division at Microsoft 排版:Alan Wang

大家好,一年的时间过得很快,我们已经来到了2022年的年底。回顾 2022 年,我们的产品也经历了很多的迭代,在此之中,我们有几个亮点想与大家分享:

2022 年的亮点Spring Boot 插件的重大可视化体验升级

从今年年初开始,我们开始对 Spring Boot 插件进行一系列改进,旨在提高 Spring 开发者在 Visual Studio Code 上的工作效率。这包括 Bean 和Endpoint Mapping视图、Spring 应用程序的更多实时信息显示以及内存的可视化展示。我们希望这些改进可以让开发 Spring 应用程序变得更加容易,以及观察应用程序运行时的状态变得更加方便。

vscode springboot 热 vscode springboot 热更新_microsoft

基础编码体验改进

编码经验对开发者的日常效率至关重要。 2022 年,我们进行了一系列重要改进,使 Java 开发者的编码生活比以往任何时候都更加轻松。这包括类似 IntelliJ IDEA 的后缀补全,更多生成代码片段的快捷方式,签名帮助优化等等。基础体验将继续成为我们未来的重点。

vscode springboot 热 vscode springboot 热更新_microsoft_02

内置 Lombok 支持

Project Lombok 是一个流行且广泛使用的 Java 库,用于最小化或删除样板代码。从 7 月开始,我们的 Java 插件可以直接支持使用 Lombok 的项目,而无需安装任何额外的插件。我们还要感谢 @GabrielBB,他启动了最初的 Lombok 插件。您可以在这篇博文中找到如何启用 Lombok 支持。

vscode springboot 热 vscode springboot 热更新_java_03

200 万 Java 开发者使用 Visual Studio Code

11 月,我们分享了Visual Studio Code 上有 200 万 Java 开发者的消息,这是一个重要的里程碑,我们要感谢社区的所有支持,谢谢!

除了 2022 的亮点之外,让我们看看最新版本的新功能!

2022 年 12 月更新Spring Boot – 实时内存视图

作为本月更新的亮点,我们引入了一个新的图形内存视图,作为 Spring Boot Dashboard 的最新成员。内存视图可以可视化正在运行的 Spring Boot 应用程序的内存和垃圾回收活动,与 Spring Boot Dashboard 的方式非常相似,它已经为您提供了对运行 Spring Boot 应用程序(如Bean 和Endpoint Mapping)的观察力。

内存视图下有四种图形可视化类型:

堆内存(Heap Memory)——提供 JVM 中不同堆区域、使用的总内存和总内存大小的堆叠概览

非堆内存(Non-Heap Memory) – 显示 JVM 中不同非堆区域相对于使用的总内存和总内存大小的堆叠概览

Gc 暂停(Gc Pauses) – 描述了 GC 事件的暂停时间的频率和持续时间

垃圾回收(Garbage Collection) – 显示应用程序中 GC 事件的计数

内存视图使用 Spring Boot Actuator 数据从正在运行的应用程序收集数据。因此,只要您的项目具有 Spring Boot Actuator 依赖项,您就可以使用实时内存视图。

与 Beans 和 Endpint Mapping 视图相比,内存视图仅显示来自一个特定运行的 Spring Boot 应用程序的信息,它不会同时可视化来自多个正在运行的应用程序的数据。因此,您需要选择一个您感兴趣的应用程序。

这是此实时内存视图功能的演示。

vscode springboot 热 vscode springboot 热更新_java_04

Gradle 中的注解处理器支持

注解处理是自 Java 5 以来就存在的一个 Java 编译选项。它允许在编译期间生成其他文件,例如类或文档。如果我们正在使用 Gradle 并希望使用注解处理,我们可以通过将特定依赖项标记为 annotationProcessor 依赖项配置的一部分来实现。例如:

dependencies {
    annotationProcessor 'org.mapstruct:mapstruct-processor:1.3.1.Final'
    ...
}

在我们的最新版本中,我们在 Gradle for Java 插件中支持了注解处理,因此如果您在依赖项中标记了annotationProcessor ,您将能够在编译期间看到生成的文件。这是此功能的演示。

vscode springboot 热 vscode springboot 热更新_microsoft_05

用户体验-更好的构建错误信息提示

当我们的插件程序检测到项目中的构建错误时,通常会有一个弹出窗口提示用户采取某些操作。但是,以前此弹出窗口存在某些限制。在我们的最新版本中,我们对两个主要场景进行了改进。

没有构建工具的项目

之前,如果工作区中有多个文件夹,只有一个文件夹出错,用户试图运行其他文件夹,我们仍然会提示用户错误信息,这造成了不好的用户体验。因此我们改进了此行为,现在我们只会在当前文件夹出现问题时提示生成错误消息,这是一个演示。

vscode springboot 热 vscode springboot 热更新_microsoft_06

Maven 项目

我们还对 Maven 项目进行了改进。如果您有一个多模块项目并且其中一个依赖项存在错误,我们将提示您构建错误消息。但是,一旦该错误得到修复,提示就会消失,您将能够顺利运行该应用程序。请看下面的演示。

vscode springboot 热 vscode springboot 热更新_spring boot_07

最后但同样重要的是,您可能已经注意到,提示现在已更改为“继续”、“始终继续”、“修复”,这样的提示将对用户更加直观。

2023 年的 Visual Studio Code Java

我们要再次感谢大家在过去一年中给予的所有大力支持。我们祝大家圣诞快乐,新年快乐。 2023 年将会有很多很棒的更新,敬请期待,我们明年再见!

安装 Java 插件包

要使用上述所有功能,请在 Visual Studio Code 上下载并安装 Extension Pack for Java。

vscode springboot 热 vscode springboot 热更新_spring boot_08

如果您是一位 Spring 开发者,并且正在编写 Spring Boot 相关的程序,您也可以下载并安装 Spring Boot 插件包,获得与 Spring Boot 有关的专属开发体验。

vscode springboot 热 vscode springboot 热更新_vscode springboot 热_09