首先需要安装Go语言运行时,推荐通过包管理器(简单)或手动下载(灵活)两种方式:

sudo yum update -y && sudo yum install golang -y# CentOS 7sudo dnf install golang -y# CentOS 8/9go1.21.0.linux-amd64.tar.gz),执行以下命令:wget https://golang.org/dl/go1.21.0.linux-amd64.tar.gzsudo tar -C /usr/local -xzf go1.21.0.linux-amd64.tar.gz~/.bashrc(当前用户)或/etc/profile(全局),添加以下内容:export GOROOT=/usr/local/goexport GOPATH=$HOME/goexport PATH=$PATH:$GOROOT/bin:$GOPATH/bin使配置生效:source ~/.bashrc# 或 source /etc/profilego version,若输出类似go1.21.0 linux/amd64则说明安装成功。Delve(dlv)是Go语言原生调试器,支持断点、单步执行、变量查看等功能,需通过Go命令安装:
go install github.com/go-delve/delve/cmd/dlv@latest安装完成后,验证Delve版本:
dlv version若输出Delve版本信息(如Delve Debugger Version: 1.21.0),则说明安装成功。
默认情况下,go build会生成包含调试信息的二进制文件,无需额外参数。若需显式指定,可使用:
go build -gcflags="-N -l" -o myapp# -N 禁用优化,-l 禁用内联生成的myapp二进制文件可用于调试。
使用Delve启动调试会话,常见命令如下:
dlv debug ./myapp# 调试当前目录下的main包main.go:10):(dlv) break main.go:10(dlv) continue# 继续执行至下一个断点next(n):执行下一行(不进入函数);step(s):执行下一行(进入函数)。(dlv) print variableName# 查看变量值(dlv) exit这些命令可在终端中直接交互使用,适合快速调试。
VS Code通过Go扩展可提供更直观的调试体验,步骤如下:
launch.json配置文件:打开项目根目录,点击左侧“运行和调试”侧边栏→点击齿轮图标→选择“Go”环境→生成launch.json文件,内容如下:{"version": "0.2.0","configurations": [{"name": "Launch Program","type": "go","request": "launch","mode": "debug","program": "${workspaceFolder}",// 当前工作区目录"env": {},"args": []// 可添加命令行参数,如 ["--port=8080"]}]}main.go),在代码行左侧点击设置断点,然后点击顶部“运行和调试”侧边栏的绿色三角按钮,即可启动调试会话。若需在本地调试运行在CentOS服务器上的Go程序,可配置Delve的headless模式:
dlv debug --headless --listen=:2345 --api-version=2 ./myapplaunch.json,添加“Remote Attach”配置:{"version": "0.2.0","configurations": [{"name": "Attach to Remote","type": "go","request": "attach","mode": "remote","remotePath": "${workspaceFolder}",// 服务器项目路径"port": 2345,// 服务器Delve监听端口"host": "your-server-ip" // 服务器IP地址}]}点击“运行和调试”侧边栏,选择“Attach to Remote”即可连接服务器调试。sudo运行Delve(不推荐长期使用),或调整二进制文件权限;