V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
winffee
V2EX  ›  Visual Studio Code

VS Code Java 年末大量更新!测试覆盖率以及多模块项目导入支持, Spring Boot 插件海量更新

  •  
  •   winffee · 2023-12-21 10:01:24 +08:00 · 2130 次点击
    这是一个创建于 372 天前的主题,其中的信息可能已经有所发展或是发生改变。

    大家好,欢迎来到 Visual Studio Code for Java 的十二月更新!先提前祝大家圣诞快乐和新年快乐!在本博客中,我们有许多令人兴奋的新功能,包括测试覆盖率、用户体验更新以及 Spring Boot 更新。让我们开始吧!

    测试覆盖率 (Test Coverage)

    测试覆盖率是一个关键指标,显示软件程序中有多少代码被测试过。在先前的版本中,开发者在Extension Pack for Java中运行测试时无法看到测试覆盖率,而根据用户反馈,测试覆盖率可能是用户最想要的功能之一。

    我们有一个好消息要分享!根据在 GitHub 上的Issue中取得的最新进展,我们的团队已经在Extension Pack for Java中采用了最新的测试覆盖率 API 。开发者已经可以在 Visual Studio Code 的Insiders 版本中查看运行 Java 测试的覆盖率结果。要获取覆盖率结果,请在运行测试时选择“Execute Using Profile”,然后选择“Run Tests with Coverage”,您将能够在测试资源管理器中看到“Test Coverage”面板。

    请注意,要使用这一新功能,请确保您安装了 Visual Studio Code 的Insiders版本和Extension Pack for Java的最新版本。这里有一个演示该功能的视频。

    按类别分组Java插件设置

    随着在 VS Code 中的 Java 插件中添加更多功能,也会创建更多的配置来控制相关行为。之前,所有我们的 Java 相关配置都被放在一起,这将使用户很难找到他们想要的特定配置。在我们最新的版本中,我们改进了用户体验,使配置按类别和使用情况进行了分组。这将使用户以更高效的方式找到设置。这是当前体验的截图。

    优化过的“添加新的Java文件”体验

    我们从用户那里收到了许多反馈,称在我们的插件中创建 Java 类/接口/其他类型不够直观。在之前的版本中,用户需要先创建一个 Java 文件,然后从建议的列表中选择类型,这个流程对许多习惯于其他 Java IDE 的开发者来说并不理想。在我们的最新版本中,我们改变了流程,使得当用户创建 Java 文件时,我们的 Java 插件将直接显示 Java 类型的列表,然后用户可以输入文件的名称。当工作流程完成时,用户将拥有一个已经准备好的完整文件。这里有一个演示该功能的视频。

    更好的多模块项目导入支持

    想象一下,如果您有一个多模块 Java 项目,并将其导入到 Visual Studio Code 中。我们先前版本的插件会自动将所有内容导入工作区。如果您有许多模块,这将需要很长时间。现在有了我们的新功能,情况就不再如此。当设置“java.import.projectSelection”为“manual”时,用户可以将项目导入到工作区,然后选择要导入的子模块,从而跳过不需要导入的模块,大大减少了整体项目导入时间。请看下面的演示。

    请注意,目前只有 Maven 项目可以部分导入。

    Spring Boot插件的新功能

    除了上述核心 Java 插件更新外,Spring Tools 插件(包含在Spring Boot Extension Pack中)还有一些令人兴奋的新功能。

    将项目迁移到 Spring Boot 3.2

    Spring Tools 的最新版本包括使用 OpenRewrite 的最新配方,支持将您的 Spring 项目自动升级到 Spring Boot 3.2 。这是对现有升级支持(从 Spring Boot 2.x 升级到 Spring Boot 3.0 及以上)的一个补充。

    改进了生成请求映射(Request Mapping)方法的代码补全

    此外,Spring Tools 扩展的最新版本特别改进了代码完成模板,以便在控制器类中快速编写新的请求映射方法。在控制器类中键入**@**后,新的请求映射的完成将立即显示,使它们在您的指尖更加显眼和有用。这里有一个演示。

    属性的补全速度提高

    application.properties 或 application.yml 文件中的代码完成现在工作得更快了,第一次调用甚至比以前的版本快了多达 10 倍。

    完全集成新验证引擎

    已在九月引入的新验证引擎比以前快速分析和索引您的项目。在后台使用更少的内存的同时,Spring 特定的验证和快速修复现在显示得更快。

    其它 性能改进

    在最近的 Spring Tools 版本中进行了许多其他性能改进,使它们在使用更少的 CPU 周期和更少的内存的同时更快。与之前的版本,特别是 2023 年 9 月之前的版本相比,Spring Tools 的感觉更加迅捷和轻量。

    展望未来

    正如我们在上一次路线图博客文章中分享的,2024 年将会有许多令人兴奋的事情,让我们继续在 Visual Studio Code 上打造出色的 Java 体验!

    安装 Java 插件包

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

    Image javapack

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

    Spring boot extension pack

    反馈与建议

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

    资源

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

    10 条回复    2023-12-28 18:54:38 +08:00
    gongquanlin
        1
    gongquanlin  
       2023-12-21 10:09:49 +08:00
    想问下,在 vscode 想和 idea 一样直接 evaluate expression ,怎么才能实现呀?这个做问题复现的时候用的还挺多的,现在貌似只能在调试台里,不如 idea 弹窗处理起来方便
    fkdog
        2
    fkdog  
       2023-12-21 10:14:16 +08:00
    现在 vscode java 包体验挺不错的。
    唯一不是很 happy 的点在于自带的几个主题 java 下的 color schema 太丑了,睁一眼看去就是大片大片蓝色和黄色。

    对比一下 python html ,简直天差地别。
    byte10
        3
    byte10  
       2023-12-21 10:16:44 +08:00
    很强,很给力👍🏻。
    byte10
        4
    byte10  
       2023-12-21 10:27:52 +08:00
    我最近开发 arduino 项目发现一个 platformio IDE 这个插件,它很多的配置都是用 UI 界面进行配置的,这个交互体验就挺好的,对用户体验提升很大。

    现在我对于这些开发 java 的插件所支持的功能都不太了解,虽然看文档或者用命令可以找到想要的操作,但如果能把这些插件全部合并一起来,然后大统一个配置界面,这样完美啦 🤩 😋。
    1t1y1ILnW0x5nt47
        5
    1t1y1ILnW0x5nt47  
       2023-12-21 10:31:44 +08:00
    可能是我太菜了,在 vscode 里面设置 Java 环境太麻烦,所以我选择 jb
    sprite82
        6
    sprite82  
       2023-12-21 11:28:15 +08:00
    刚试了一把,远程开发 Java ,配置仍然要在.json 文件里配置,而且莫名奇妙的 JAVA_HOME 居然是我主机的 而不是远程机器上的,我也懒得找解决方案了,麻烦的要死
    预计几年之内都无法 Java 配置困难的问题,上手都这么麻烦怎么从 idea 手中抢用户?
    AwesomeBing
        7
    AwesomeBing  
       2023-12-21 11:58:30 +08:00
    spring boot 项目现在完全可以用 vscode, 体验了一下感觉很不错, 打开一个项目下完依赖直接就能用了, crud 没压力, 用这个写 java 感觉电脑都快了很多😂
    charizard9
        8
    charizard9  
       2023-12-28 17:34:59 +08:00
    @byte10 文章里面说的按分类插件配置应该就是从某一程度缓解你说的那个问题吧
    charizard9
        9
    charizard9  
       2023-12-28 17:36:52 +08:00
    @sprite82 据了解 settings.json 配置不是光 java 的问题,而是 vscode 这个编辑器的一些天然特征(其它语言插件也是这样的习惯),如果产品团队之后出一些图形化的界面,那可以解决你说的这个图形化配置 JDK 的问题
    byte10
        10
    byte10  
       2023-12-28 18:54:38 +08:00
    @sprite82 我估计是你配置错了,有 remote settings.json ,但是开发 java 并不一定要远程开发啊,本地配置 jdk 后就可以开发 java
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2269 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 01:01 · PVG 09:01 · LAX 17:01 · JFK 20:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.