Visual Studio Code 的 Mojo 扩展使您可以将 VS Code 的内置调试器与 Mojo 程序一起使用。(Mojo 扩展还支持调试 C、C++ 和 Objective-C。)
有关 VS Code 调试功能的完整介绍,请参阅 Visual Studio Code 中的调试。
本文介绍了可通过 Mojo 扩展获得的功能,以及 Mojo 调试器的当前限制。
Mojo SDK 包含LLDB 调试器和 Mojo LLDB 插件。它们共同为 Mojo 扩展提供了低级调试接口。您还可以使用该mojo debug命令使用 LLDB 启动命令行调试会话或在 VS Code 中启动 Mojo 调试会话。
开始调试
有几种方法可以在 VS Code 中启动调试会话。
要开始调试,您需要有一个 Mojo 项目进行调试。本文以GitHub上的 Mojo repo中有许多从简单到复杂的示例进行展示。
VS Code 老手?
如果您已经熟悉 VS Code 中的调试,本节中的材料将主要作为复习。
快速运行或调试
如果您的活动编辑器选项卡包含带有入口点的 Mojo 文件fn main(),则运行或调试它的最快方法之一是使用编辑器工具栏中的运行或调试按钮。
开始调试当前文件:
- 打开运行或调试下拉菜单并选择调试 Mojo 文件或 在专用终端中调试 Mojo 文件。
这两个调试配置在处理输入和输出的方式上有所不同: - Debug Mojo File可启动与任何终端分离的 Mojo 程序。程序的标准输出和标准错误输出显示在 Debug Console中。您无法写入程序的标准输入,但您可以在一个位置查看程序的输出并与调试器交互。
- 在专用终端中调试 Mojo 文件会创建 VS Code 集成终端的新实例,并将程序的输入和输出附加到终端。这样您就可以在终端中与程序的标准输入、标准输出和标准错误输出进行交互,而调试控制台仅用于与调试器进行交互。
运行或调试按钮使用预定义的启动配置。目前无法修改使用运行或调试配置args启动的程序的、env或cwd其他设置。如果您需要自定义其中任何内容,请参阅后面的 编辑启动配置。
选择其中一个调试配置后,按钮会更新以显示调试符号。单击该按钮可重新运行上一个配置。
运行和调试视图
运行和调试视图包含一个用于启动调试会话的按钮和一个用于选择调试配置的菜单。它还包含用于显示当前变量、监视表达式、当前调用堆栈和断点的区域。
图 1.运行和调试视图
要打开运行和调试视图,请单击活动栏(在 VS Code 窗口左侧)中的 运行和调试图标,或者按 (在 macOS 上)。Control+Shift+D Command+Shift+D
如果您尚未在当前项目中创建任何启动配置,VS Code 将显示运行启动视图。