大家好,欢迎来到 Visual Studio Code Java 的 10 月更新。这次我们带来了很多代码编辑和调试体验的改进,让我们开始吧!
调试体验提升
行内断点(Inline breakpoint)的可视化提示
考虑这样的一行代码:
Stream.of (“Frank”).map(name -> name.toUpperCase ()). forEach ((item -> System.out.println (item));
当您在这一行设置断点时,Visual Studio Code 将自动识别该行中的所有 lambda 表达式,并用灰点在语句旁边将它们可视化。如果你想在那些 lambda 表达式上进一步设置行内断点,你可以直接点击那些灰点,灰点会像普通断点一样变成红点,然后在代码执行过程中调试器会停在这些断点处。这将为您提供更轻松的这些 lambda 表达式的调试体验。这里是一段演示:
支持Java虚拟线程
Java 19 为 Java 平台带来了虚拟线程的第一个预览,这是 Project Loom 的主要成果。虚拟线程旨在显着提高并发 Java 编程的可扩展性,同时尽可能保留当前 API的形态。在我们 9 月的版本中,我们在 Java 调试器中启用了对虚拟线程的支持。请注意您需要安装JDK 19来使体验该新功能。以下是在调试中的截图:
有关虚拟线程的更多详细信息,您可以在此处阅读官方博客文章。
编码体验改进
更快捷的Lombok代码操作:Lombok & Delombok
自从我们在 7 月推出对 Lombok 的全面支持以来,我们收到了很多功能需求!一个呼声高的需求是在用户点击 Code Action 灯泡(快速修复)时提供方便的 Lombok 操作,因此我们已将此功能添加到我们的最新版本中。我们目前支持的Annotation是:
- @Data
- @NoArgsConstructor
- @AllArgsConstructor
- @Getter
- @Setter
- @ToString
- @EqualsAndHashCode
您不仅可以使用此快捷方式来“Lombok”您的代码,还可以通过取消选择其中一些来”DeLombok”您不再需要的注解。这是一个演示。
另外,我们想再次提一下,我们的扩展现在已经内置了对 Lombok 的支持,这在 Project Lombok 的官方主页上也有提及!
支持@Nullable 和@Nonnull注解
最后,我们增强了代码分析以支持 @Nullable 和 @Nonnull 注释。 @Nullable 和 @Nonnull 注释让开发者和编译器知道是否可以为变量、参数或返回值允许null。
如果我们检测到某些合同被违反,我们将在问题(Problems)部分显示警告,并在编辑器区域为您突出显示它们。这是此功能的快速演示。
目前,我们支持以下包中的 @NonNull 和 @Nullable 注释
- javax.annotation.*
- org.eclipse.jdt.annotation.*
- org.springframework.lang.*
如果您希望在代码分析中包含或排除某些注解,您可以在settings.json中的“ java.compile.compileAnalysis.nonnull ”和“ java.compile.compileAnalysis.nullable ”下进行配置。这是一个屏幕截图。
安装 Java 插件包
要使用上述所有功能,请在 Visual Studio Code 上下载并安装Extension Pack for Java 。
如果您是一位Spring开发者,并且正在编写Spring Boot相关的程序,您也可以下载并安装Spring Boot插件包,获得与Spring Boot有关的专属开发体验
反馈与建议
2022 年,Visual Studio Code 上的 Java 会有很多激动人心的更新,一如既往,您的反馈和建议对我们非常重要,将有助于我们未来的产品塑造。有几种方法可以给我们留下反馈
- 填写中文问卷
- 在这个帖子下留言
- 在我们的GitHub repo上创建Issue
- 发送电子邮件到vscjfeedback@microsoft.com
资源
以下链接和资源能帮助您更好地了解Java on Visual Studio Code的相关信息
0 comments