【GoLand教程】GoLand debug断点功能

断点是在特定点暂停程序执行的特殊标记。这使您可以检查程序状态和行为。断点可以很简单(例如,在到达某行代码时暂停程序)或涉及更复杂的逻辑(检查附加条件、写入日志消息等)。
一旦设置,断点将保留在您的项目中,直到您明确删除它,临时断点除外)。
如果带有断点的文件被外部修改,例如,通过 VCS 更新或在外部编辑器中更改,并且行号已更改,则断点将相应移动。请注意,进行此类更改时,GoLand 必须正在运行,否则它们将被忽视。
断点的类型
GoLand 中提供以下类型的断点:
- 行断点:在到达设置断点的代码行时暂停程序。这种类型的断点可以设置在任何可执行的代码行上。
- 异常断点:抛出子类时暂停程序。
panic()
被抛出。
设置断点
设置行断点
- 单击要设置断点的可执行代码行的间距。或者,将插入符号放在该行并按Ctrl+F8。
设置异常断点
- 单击Debug工具窗口左侧的View Breakpoints 或按。
Ctrl+Shift+F8
- 在Breakpoints对话框中,选择Go error breakpoint或JavaScript Exception Breakpoint。
管理断点
删除断点
- 对于非异常断点:单击装订线中的断点。
- 对于所有断点:从主菜单中,选择Run | 查看 Breakpoints Ctrl+Shift+F8,选择断点,然后单击Remove Delete。
为避免意外删除断点并丢失其参数,您可以选择通过将断点拖动到编辑器或单击鼠标中键来删除断点。为此,请转到设置/首选项 | 构建、执行、部署 | 调试器并选择拖动到编辑器或用鼠标中键单击。单击断点将启用或禁用它。
静音断点
如果您不需要在断点处停止一段时间,您可以将它们静音。这允许您在不离开调试器会话的情况下恢复正常的程序操作。之后,您可以取消静音断点并继续调试。
- 单击调试工具窗口工具栏中的静音断点按钮。
启用/禁用断点
删除断点时,其内部配置将丢失。要暂时关闭单个断点而不丢失其参数,您可以禁用它:
- 对于非异常断点:右键单击它并根据需要设置启用选项。如果没有分配删除断点,您也可以使用鼠标中键切换它们。
- 对于所有断点:单击查看断点 Ctrl+Shift+F8并选中/取消选中列表中的断点。
移动/复制断点
- 要移动断点,请将其拖到另一行。
- 要复制断点,请按住断点Ctrl并将其拖动到另一行。这会在目的地创建一个具有相同参数的断点。
配置断点的属性
根据断点类型,您可以配置其他属性,以便根据特定需求定制其操作。最常用的选项可通过intents获得。
- 要访问断点意图,请将插入符号放在断点所在的行并按Alt+Enter。当您需要快速配置基本断点属性时使用此选项。
- 要访问完整的属性列表,请右键单击断点并单击更多或按Ctrl+Shift+F8。使用此选项可以鸟瞰所有断点并完全控制其配置。
意向参考
意图 | 描述 |
---|---|
删除断点 | 删除选定行处的断点。 |
禁用断点 | 在选定行禁用断点。 |
编辑断点 | 打开一个包含最常用断点属性的对话框。如需更多属性,请单击更多或按Ctrl+Shift+F8。 |
禁用直到遇到以下断点
断点状态
断点可以具有以下状态:
地位 | 描述 |
---|---|
无效的 | 如果在断点处暂停程序在技术上是不可能的,调试器会将其标记为无效。最常见的原因是该行没有可执行代码。 |
静音 | 所有断点都暂时处于非活动状态,因为它们已被静音。 |
已禁用 | 此断点暂时处于非活动状态,因为它已被禁用。 |
非暂停 | 为此断点设置了暂停策略,以便在命中时不会暂停执行。 |
断点图标
根据它们的类型和状态,断点标有以下图标:
线 | 例外 | |
---|---|---|
常规的 | ||
已禁用 | ||
静音 | ||
静音已禁用 | ||
非暂停 | ||
无效的 |