Nick zhu, Senior Program Manager, Developer Division at Microsoft

大家好,欢迎来到 7 月版的 Visual Studio Code Java 更新。在这篇文章中,我们将分享我们整体产品路线图的进展,并重点介绍我们全新的测试体验,以及在Maven 和项目管理相关的改进。让我们开始吧!

全新的Java测试体验

随着 Visual Studio Code 1.59.0 正式版本的发布,全新的插件测试 API 也从试验版本进入了正式版本。自 2020 年 9 月起至今,经过了将近一年及数次版本迭代的打磨,不管是 API 的功能性还是易用性,与首个预览版本相比都获得了极大的提升。其中 Java Test Runner (包含在 Java 扩展包中)作为首批采用了测试 API 的插件,也发布了全新的 0.31.0 版本,在功能和用户体验上迎来了许多新的提升和亮点。接下来我们就通过 Java Test Runner 插件,看看新的测试 API 能帮助插件在测试的使用场景下提供哪些功能!

全新的Testing Decoration

现在用户可以在编辑器左侧区域看到一排新的按钮(Testing Decoration),直接点击会立即运行该行对应的测试用例,右键则能看到更多的选项。与过去的 Code Lens 不同,它可以减少在编辑区域内对用户的干扰。

功能更强大的测试浏览器

测试浏览器(Testing Explorer)焕然一新,现在用户可以自定义浏览器的显示方式和排序方式,以满足不同的场景和习惯。用户也可以直接通过测试浏览器来运行或者调试测试。

另外新的测试浏览器内嵌了搜索栏的支持,帮助用户快速查找目标测试用例,加速开发效率。

内容更丰富的 Test Message

新的测试 API 允许插件在编辑区域内嵌显示测试执行结果等内容,更方便快捷地查看错误和堆栈信息:

想了解更多关于新测试功能的特性, 请访问 官方文档

Maven 依赖管理体验改进

除了测试体验,我们还对 Maven 依赖管理做了一些改进。具体来说,我们改进了 Maven 依赖树的界面,使其更加人性化。此外,我们意识到 Maven 依赖冲突有时会较难处理,有时 Maven 可能无法按照我们希望的方式自动解决冲突,这可能会导致我们在运行应用程序时出错。因此,我们对 Maven 扩展进行了一些更改,以更好地在界面中展示 Maven 如何解决依赖冲突。另外,Maven POM 中的冲突将直观地出现在Terminal的错误Tab中。在用户单击这些错误后,Visual Studio Code 将提示开发人员修复冲突并选择要使用的依赖项。下图展示了如何帮助用户快速解决冲突的案例。

项目管理

除了测试和依赖管理,我们还改进了项目管理相关的功能。具体而言,我们修复了项目浏览器无法正常工作的几个问题。这是我们所做的增强/错误修复的列表。

  • 在没有构建工具的情况下创建项目时,默认明确设置输出路径 (Issue #523)
  • 编辑时 Java 项目资源管理器意外扩展 (Issue #502)
  • 从 Java Project Explorer 中删除包时无法自动刷新 (Issue #458)
  • 当我保存文件时,“EXPLORER”会自动展开并显示 (Issue #430)
  • 打开不在类路径上的文件时观察到异常 (Issue #494)

产品路线图进展更新

上个月,我们分享了未来几个月的路线图。在博客中,我们提到了几个领域作为我们的重点

  • 基本开发体验的持续改善
  • 构建工具 (Maven / Gradle)
  • 远程开发 / Codespaces 支持
  • 测试
  • 安全
  • 调试 (探索虚拟线程)

作为 7 月博客的一部分,我们希望给大家更新一下目前的进展。绿色标记的文字是我们取得重要进展的领域。正如前面部分所述,我们在改进整体测试 API 体验方面迈出了一大步。在接下来的几个月中,我们还将继续添加更多与测试相关的功能(例如测试覆盖率)。在构建工具方面,我们一直在改进我们的 Maven 体验,与此同时我们将继续致力于更好的 Gradle 支持。最后,我们已经在 Java 开发环境中支持了受信任/不受信任的工作区,因此我们在安全方面也有了较显著的进展。

对于路线图中提到的其他领域,我们一直在积极改善相关的体验,并将在取得重要进展时提供更新。

反馈与建议

请积极使用我们的产品!您的反馈和建议对我们非常重要,并将帮助我们做得更好。 有几种方法可以给我们留下反馈

  • 在这个帖子下留言
  • 在我们的GitHub repo上创建Issue

资源

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

Java on Visual Studio Code的更新 – 2021年7月的更多相关文章

  1. Java on Visual Studio Code的更新 – 2021年6月

    Nick Zhu from Microsoft VS Code Java Team 大家好,欢迎来到 Visual Studio Code Java 更新的特别年中版.作为这篇文章的重点,我们将看看接 ...

  2. Java on Visual Studio Code的更新 – 2021年8月

    Nick Senior Program Manager, Developer Division at Microsoft 大家好,欢迎来到 8 月版的 Visual Studio Code Java ...

  3. Java on Visual Studio Code的更新 – 2021年11月

    Nick zhu Senior Program Manager, Developer Division at Microsoft ​大家好,欢迎来到 11 月版的 Visual Studio Code ...

  4. Java on Visual Studio Code的更新 – 2021年4月

    杨尧今 from Microsoft VS Code Java Team 欢迎来到这一期的VS Code Java更新.又是一个忙碌而富有成效的月份. Java调试器和Java测试扩展获得了新功能.在 ...

  5. Java on Visual Studio Code的更新 – 2021年3月

    欢迎来到Java的VS Code更新.在过去的几个月中,我们的工程师一直在专注于一些非常重要的工作.现在,是时候揭开面纱了,开始吧. 类型层次结构(Type hierarchy) VS Code已经支 ...

  6. Java on Visual Studio Code的更新 – 2021年5月

    杨尧今 from Microsoft VS Code Java Team 欢迎来到 5月的 VS Code for Java 更新.这次,我们将与您分享Java格式化设置编辑器和其他很酷的功能.开始吧 ...

  7. Java on Visual Studio Code的更新 – 2022年1月

    大家好,欢迎来到 Visual Studio Code Java 更新 1 月版!这是我们新年的第一篇博客,我们将回顾 2021 年的亮点,并分享我们 2022 年的产品路线图!除此之外我们还有一些令 ...

  8. Ubuntu 14.04 下使用微软的跨平台轻量级开发神器 Visual Studio Code

    因为 Visual Studio Code 不断更新,官方最新 v1.32 的 .deb 包已经不能用于 Ubuntu 14.04 直接安装了. 下载 v1.31 的 deb 包安装即可:https: ...

  9. Tool:Visual Studio Code

    ylbtech-Tool:Visual Studio Code Microsoft在2015年4月30日Build 开发者大会上正式宣布了 Visual Studio Code 项目:一个运行于 Ma ...

随机推荐

  1. Vsftpd虚拟用户登陆配置(Centos7)

    1 安装Vsftpd服务 # yum install vsftpd -y vsftp虚拟用户是为了保证FTP服务器的安全性,由vsftpd服务器提供的非系统用户账号, 相对于FTP的本地用户来说,虚拟 ...

  2. hdu 6048 Puzzle 拼图 逆序数

    关于拼图和逆序数的关系可以看看这个 http://www.guokr.com/question/579400/ 然后求逆序数在判断就行了 按题意生成原始排列,观察发现,每一轮数后方比该数小的数的数量( ...

  3. centos 8.3安装 一键安装部署gitlab

    安装和配置gitlab必须的依赖包 [root@gitlabdev ~]#dnf install -y curl policycoreutils openssh-server perl 设置开机自启s ...

  4. 使用RestTemplate发送post请求,请求头中封装参数

    最近使用RestTemplate发送post请求,遇到了很多问题,如转换httpMessage失败.中文乱码等,调了好久才找到下面较为简便的方法: RestTemplate restTemplate ...

  5. 12 shell case in语句

    Shell也支持两种分支结构(选择结构),分别是 if else 语句和 case in 语句.当分支较多,并且判断条件比较简单时,使用 case in 语句就比较方便了. if else 语句与ca ...

  6. postgresql分组后获取第一条数据

    -- 根据编号分组取第一条数据 select * from table t where t.no=(select max(no) from table t1 where t1.no=t.no) -- ...

  7. HanLP使用教程——NLP初体验

    话接上篇NLP的学习坑 自然语言处理(NLP)--简介 ,使用HanLP进行分词标注处词性. HanLP使用简介 HanLP是一系列模型与算法组成的NLP工具包,目标是普及自然语言处理在生产环境中的应 ...

  8. linux驱动之LED驱动

    通过之前的学习,了解到linux驱动编写的流程是:先通过注册函数注册我们编写的入口函数,然后在入口函数中获取设备号->注册字符设备->自动创建设备节点->获取设备树信息,最后通过销毁 ...

  9. Codeforces Round #707 Editorial Div2 题解

    CF1501 Div2 题解 CF1501A 这道题其实是一道英语阅读题,然后样例解释又不清晰,所以我看了好久,首先它告诉了你每个站点的预期到达时间 \(a_i\) ,以及每个站点的预期出发时间 \( ...

  10. C语言:进制表示

    二进制由 0 和 1 两个数字组成,使用时必须以0b或0B(不区分大小写)开头 八进制由 0~7 八个数字组成,使用时必须以0开头(注意是数字 0,不是字母 o) 十六进制由数字 0~9.字母 A~F ...