VS Code Java 3 月更新!支持 IntelliJ 风格的代码补全

2022年3月25日 288点热度 0人点赞 0条评论

点击蓝字

关注我们

作者:Nick Zhu - Senior Program Manager, Developer Division at Microsoft

排版:Rani


大家好,欢迎来到 Visual Studio Code Java 的 3 月更新。这次我们将为您带来一些关于我们代码补全的优化、Maven 改进以及我们最新的 Java 插件预览版本的最新更新。让我们开始吧!



更多生成代码片段的快捷方式

由于我们对 Java 的语言支持是通过Eclipse ™ JDT Language Server 提供的,所以生成某些代码片段(例如System.out.println() )的快捷方式大多基于 Eclipse 风格。例如,System.out.println()的快捷方式是sysout 。但是,我们从很多用户那里听说他们习惯了其它 IDE(例如 IntelliJ IDEA)的快捷方式,并且希望看到 VS Code 也支持这些 IDE 的快捷方式。因此,我们也在插件中添加了这些常用代码片段的快捷方式。以下是我们支持的快捷方式的列表

代码片段

Eclipse风格快捷方式

IDEA风格快捷方式

System.out.println()

sysout

sout

System.err.println()

syserr 

serr

当前函数签名的System.out.println() 

systrace

soutm

public static void main(String[] args) {}

main

psvm / main

Iterator (for 循环)

foreach

iter

以下是展示这些新快捷方式的演示

图片

Eclipse ™ JDT Language Server 

https://github.com/eclipse/eclipse.jdt.ls



构造函数的代码补全优化

关于代码补全,目前用户反馈最多的问题之一是在 VS Code 中编写构造函数时,用户一般希望补全的提示可以和定义的类型直接相关(例如, Listlist = …,提示“…”部分的时候应该建议ArrayList等列表类型),但是,在当前的插件中通常不是这种情况。


在过去的几次迭代中,我们已经调查了这个问题并进行了更改以改善这种体验。通过这些新的改进,代码补全将更加了解用户正在创建的类型,并为构造函数建议最相关的类型。例如, 定义List将导致对 new ArrayList补全的建议。类似地,一个String[]将导致一个数组类型的建议来完成构造函数。以下是一个对该优化的演示:

我们仍在对上述功能进行一些调整,并将在接下来的几个版本中发布。


今年早些时候,我们发布了 2022 年路线图,更好的代码补全体验是我们的重点之一。我们希望继续改进这一领域,所以如果您希望看到有关代码补全质量和性能的任何其它反馈,请告诉我们(提供反馈的渠道在最下方)。

2022 年路线图

https://devblogs.microsoft.com/java/java-on-visual-studio-code-update-january-2022/



Maven 改进

除了代码完成的新功能外,我们还对 Maven 插件进行了一些改进。


显示 Maven POM 文件路径

在之前的插件中,当用户打开多个同名项目时,很难区分项目属于哪个POM文件。此外,显示 POM 文件的确切路径有助于为用户提供更多信息。因此,我们加入了一个小的改进:当用户将鼠标悬停在 Maven 插件视图中的主节点上时,会显示一个提示来显示完整的 Maven POM 文件路径。这是此改进的屏幕截图:

图片


POM 版本中的代码补全现在可以正确替换版本

当自动补全一个 Maven 依赖的版本时,以前我们的插件会将结果添加到现有文本中而不是替换它,从而导致我们的用户体验出现问题。我们在最近的版本中修复了这个问题,现在自动补全将正确替换版本,类似的改进也适用于artifactId和groupId 。以下是一段演示:

图片



新的Java插件预览版本机制

1.63 版以来,Visual Studio Code 已支持插件的预览版本机制,因此用户对于一款插件,可以选择安装”预览版本(Pre-Release Version)”或者是“发布版本(Release Version)”。目前,我们已经为 Gradle for Java 和 Maven for Java 插件启用了预发布通道,并将在本月底对于Java插件包中其它的插件启用预览机制。对于总是喜欢获取最新功能的用户,可以选择安装预览版本并给我们第一手的反馈。对于偏向稳定的用户,可以像以前一样继续使用“发布版 (Release version)”(默认)


您可以使用 Visual Studio Code 中“安装”按钮旁边的附加按钮轻松地在预览版本(Pre-Release Version)和发布版本(Release Version)之间切换(如下图所示)

图片
图片

1.63 版以来

https://code.visualstudio.com/updates/v1_63#_pre-release-extensions

Gradle for Java 

https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-gradle

Maven for Java

https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-maven

Java插件包

https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-pack



反馈与建议

2022 年,Visual Studio Code 上的 Java 会有很多激动人心的更新,一如既往,您的反馈和建议对我们非常重要,将有助于我们未来的产品塑造。有几种方法可以给我们留下反馈

  • 填写中文问卷

    https://www.research.net/r/vscodejava?lang=zh

  • 在这个帖子下留言

  • 在我们的GitHub repo上创建Issue

    https://www.research.net/r/vscodejava?lang=zh

  • 发送电子邮件到[email protected]



资源

以下链接和资源能帮助您更好地了解Java on Visual Studio Code的相关信息

  • 了解更多 Visual Studio Code上Java的更多信息

    https://code.visualstudio.com/docs/languages/java

  • 逐步探索有关Visual Studio Code的Java教程

    https://code.visualstudio.com/docs/java/java-tutorial


推荐阅读:


玩转VS Code

VS Code · 编程开发 · 业界资讯

图片

27360VS Code Java 3 月更新!支持 IntelliJ 风格的代码补全

root

这个人很懒,什么都没留下

文章评论