大家好,欢迎来到 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的相关信息
很酷,慢慢开始不用 IntelliJ 了。
谢谢您对VS Code的支持,如果有什么问题可以随时留言
请问有没有计划支持复制java文件的全类名呢
您好,可以请您说得更详细一些吗
就是可以拷贝java工程的文件或者目录的引用路径,就像idea上的一样,在我平时的编码中比较常用到的比如在配置springboot的自动配置文件入口的时候,需要配置一个配置类作为入口,这个时候需要的是类的全类名,按照现在在vscode中的做法,我必须去找到需要配置的类,然后先复制包名,然后再复制类名填写到配置文件,但是在idea中直接在配置类文件上右键,即可选择复制引用路径,然后直接粘贴到配置文件就可以了。
谢谢回复😄
了解了!我在: https://github.com/microsoft/vscode-java-pack/issues/763 上已经开了一个issue追踪,有什么额外信息也麻烦您到这里补充
好的,谢谢。👍