delve应该安装到哪_使用Delve调试Go应用程序

本文介绍了使用Delve作为Go语言的调试器,详细讲解了安装、启动、断点设置、变量查看、逐行执行等功能,帮助开发者更好地理解和调试Go程序。
摘要由CSDN通过智能技术生成

需要调试器

任何编程语言中最简单的调试形式是使用打印语句/日志并写入标准输出。这肯定可以工作,但是当我们的应用程序规模增加并且逻辑变得更加复杂时,它变得极其困难。将打印语句添加到应用程序的每个代码路径都不容易。这是调试器派上用场的地方。调试器可帮助我们使用断点和许多其他功能来跟踪程序的执行路径。Delve是Go的一种此类调试器。使用Delve调试Go应用程序。

安装Delve

请确保您位于一个不包含go.mod文件的目录中。

cd ~/Documents/

接下来,设置GOBIN环境变量。此环境变量指定Delve二进制文件的安装位置。如果GOBIN已经设置,请跳过此步骤。您可以GOBIN通过运行以下命令检查是否设置了。

go env | grep GOBIN

如果以上命令显示GOBIN="",则表示GOBIN未设置。请运行export GOBIN=~/go/bin/命令设置GOBIN。

让通过运行添加GOBIN到PATHexport PATH=$PATH:~/go/bin

对于macOS,需要Xcode命令行开发人员工具来运行Delve。请运行xcode-select --install以安装命令行工具。Linux用户可以跳过此步骤。

现在我们开始安装Delve。请跑

go get github.com/go-delve/delve/cmd/dlv

安装delve。运行此命令后,请通过运行来测试安装dlv version。成功安装后,它将打印Delve的版本。

Delve Debugger

Version: 1.4.0

Build: $Id: 67422e6f7148fa1efa0eac1423ab5594b223d93b

开始Delve

编写一个简单的程序,然后使用Delve开始对其进行调试。

使用以下命令为示例程序创建目录。

mkdir ~/Documents/debugsample

main.go在debugsample我们刚刚创建的目录内创建一个文件,内容如下。

上面的程序将打印切片 的最大元素arr。运行上面的程序将输出,

Max element is 188

可以调试程序了。让我们转到debugsample目录cd ~/Documents/debugsample。之后,键入以下命令以启动Delve。

dlv debug

上面的命令将开始调试当前目录中的main 软件包。键入上面的命令后,您可以看到终端已更改为(dlv)提示。如果您看到此更改,则表明调试器已成功启动并等待我们的命令:)。

让我们启动第一个命令。

在dlv提示符下,键入continue。

(dlv) continue

该continue命令将运行程序,直到出现断点或程序完成为止。由于我们没有定义任何断点,因此程序将一直运行到完成。

Max element is 188

Process 1733 has exited with status 0

如果看到上面的输出,则调试器已运行,程序已完成:)。但这对我们没有任何用处。让我们继续,添加几个断点,并观察调试器如何发挥作用。

创建断点

断点在指定的行处暂停程序的执行。当执行暂停时,我们可以将命令发送到调试器以打印变量的值,查看程序的堆栈跟踪,等等。

下面提供了创建断点的语法,

(dlv) break filename:lineno

上面的命令将lineno在文件的line处创建一个断点filename。

让我们在行号上添加一

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值