GoLand 2025.2 Help

调试

debugging session 期间,您将调试器附加到程序并启动该程序。 调试器的目的是干预程序执行过程,并向您提供其内部运行情况的信息。 这有助于检测并修复程序中的 bug。

调试前准备

  1. 设置 | 构建、执行、部署 | 调试器 中配置常见的 debugging properties and behavior

    如果您是调试的新手,默认配置即可满足您的需求。 关于每项调试器功能的主题提供了参考资料,并在适用的情况下说明了相关设置。 如果您是高级用户,正在查找特定属性,请参阅 Debugger 参考部分。

  2. 如果要使用自定义配置,请定义 run/debug configuration。 当程序需要传递参数或在启动前执行某些特殊操作时,需要这样做。 有关设置 run/debug configuration 的更多信息,请参阅 运行/调试配置 部分。 在大多数情况下,调试不带参数或没有特殊要求的简单程序时无需进行此设置。

常规调试流程

调试应用程序并没有统一的流程可供参考。 根据实际需求,您可能需要以不同的顺序执行不同的操作。 本主题提供了一般指南,概述典型调试步骤。 有关特定功能的使用时机和方式,请参阅相关主题。

  1. 定义程序应在何处停止。 这是通过使用 breakpoints 来实现的。 Breakpoints 是特殊标记,用于表示调试器需要介入并冻结程序状态的位置和条件。 被调试器冻结的程序称为 suspended

  2. 以调试模式运行程序

    与常规模式运行程序一样,您也可以同时这样做。

  3. 程序挂起后,使用调试器 获取程序状态的信息 ,以及其运行时的变化情况。

    调试器可向您提供变量值、性能标签、当前 goroutine 状态等信息。

    虽然这些工具允许您查看某一时刻的程序状态, stepping 功能可帮助您逐步控制程序的执行过程。 结合使用这些工具,您可以推断出 bug 的来源,并测试程序的健壮性。

最后修改日期: 2025年 9月 26日