使用 VS Code 调试 Java 应用程序
2017 年 9 月 28 日 贺小凯 (Xiaokai He)
对于 Visual Studio Code 上的 Java 开发者来说,Red Hat 提供的 Java™ 语言支持扩展在提供 IntelliSense 和项目支持等语言功能方面一直表现出色。与此同时,我们也听到了用户希望获得 Java 调试功能的反馈。今天,我们很高兴地宣布与 Red Hat 持续合作,并推出了一个新的轻量级 Java 调试器,它基于 Java 调试服务器,使 Java 开发者能够调试 Java 应用程序。

为了帮助 Java 开发者快速开始使用 VS Code,我们还创建了 Java 扩展包,其中包含 Red Hat 提供的 Java™ 语言支持 和 Java 调试器扩展,这样您就不需要单独搜索它们了。这只是创建 Java 现代工作流程的开始,未来我们还会为Java 扩展包添加更多功能和扩展。
入门
开始使用
- 在 Visual Studio Code 中,打开扩展视图(⇧⌘X (Windows、Linux Ctrl+Shift+X))。
- 输入 "java" 筛选列表。
- 如果您已经安装了 Red Hat 提供的 Java™ 语言支持,请找到并安装 Java 扩展包或独立的 Java 调试器扩展。
您也可以直接从这篇博文安装 Java 扩展包。
重新加载 VS Code 后,打开包含 Java 项目的文件夹,并按照以下步骤操作
- 准备项目。打开一个
.java文件,Java 扩展将被激活。支持 Maven、Gradle 和 Eclipse 项目。项目构建由扩展自动处理,无需手动触发。 - 开始调试。切换到运行视图(⇧⌘D (Windows、Linux Ctrl+Shift+D))并打开
launch.json为 Java 添加调试配置。 - 为
Launch设置填写mainClass,或者为Attach设置填写hostName和port。 - 设置您的断点并按
F5开始调试。

支持的功能
在此版本中,我们支持以下功能:
- 启动/附加 - 您可以在 VS Code 中启动 Java 项目,或附加到本地或远程以调试模式运行的任何 JVM 进程。
- 断点 - 支持按命中次数设置条件断点,并可以使用内联断点设置窗口轻松设置。这允许您直接在源代码查看器中方便地为代码添加条件断点,而无需模态窗口。还支持异常断点。
- 控制流 - 包括暂停、继续
F5、跳过F10、步入F11、步出Shift+F11 - 数据检查 - 当您停在断点处时,调试器可以访问当前存储在内存中的变量名称和值。支持检查/监视/设置变量。
- 诊断 - 调用堆栈面板显示您的程序的调用堆栈,并允许您浏览每个捕获的分配的调用路径。多线程调试支持并行堆栈。
- 调试控制台 - 调试控制台允许您查看来自 stdout 和 stderr 的信息。

后续步骤
- 查看有关 VS Code 上的 Java 的更多信息。
反馈
请分享您的反馈并提出问题以帮助我们改进。您可以通过 Gitter 联系我们。
贺小凯 (Xiaokai He),@JavaOnAzure