Java|Java on Visual Studio Code的更新 – 2021年7月
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 支持
- 测试
- 安全
- 调试 (探索虚拟线程)
对于路线图中提到的其他领域,我们一直在积极改善相关的体验,并将在取得重要进展时提供更新。
反馈与建议 请积极使用我们的产品!您的反馈和建议对我们非常重要,并将帮助我们做得更好。 有几种方法可以给我们留下反馈
- 在这个帖子下留言
- 在我们的GitHub repo上创建Issue
- 了解更多 Visual Studio Code上Java的更多信息
- 逐步探索有关Visual Studio Code的Java教程
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 事件代理
- Java|Java OpenCV图像处理之SIFT角点检测详解
- java中如何实现重建二叉树
- 数组常用方法一
- android|android studio中ndk的使用
- 【Hadoop踩雷】Mac下安装Hadoop3以及Java版本问题
- Java|Java基础——数组
- RxJava|RxJava 在Android项目中的使用(一)
- java之static、static|java之static、static final、final的区别与应用