Windows配置Delve的测试环境

时间:2021-09-11 16:50:02

引言

自己最近在玩Go,在开发一些项目的时候需要调试,由于之前都是在GoLand上写的,但是这个IDE启动太慢并且不轻便。并且自己之前很多项目都是在Vscode中编写的,所以特意想在Vscode中配置Go的开发环境和调试环境,由于在安装的过程中遇到了不少的问题,希望在此给自己留一个笔记,以便未来不再犯类似的错误

dlv的安装

dlv相关网址

在这里给出dlv的下载地址dlv github Link, 在这个网站上有对这个工具的详细介绍,并且有着对应的文档可以参考。

其中dlv的安装可以分成Linux、MacOS、Windows三个方向,自己用的是Windows,所以在这给出Windows下安装的方法,这里是Windows安装的方法Windows 安装dlv方法

dlv的安装步骤

安装dlv之前确认自己已经安装好了GoLang并且配置好了GOROOTGOPATH两个环境变量

  1. 打开cmd窗口输入命令go get github.com/derekparker/delve/cmd/dlv,等待几分钟,当下载完成之后可以切换到目录里GOPATH查看;

  2. 在cmd窗口种输入命令cd %GOPATH%,进入对应的目录文件夹里面

  3. 在src目录里找到dlv所在路径并且切换过去,最终进入 _scripts这个目录里面,开始编译安装

  4. 按顺序分别执行以下命令:

    go run make.go check-cert
    go run make.go build
    go run make.go install
  5. 执行完成之后,在cmd窗口中输入dlv后你会得到以下信息,说明dlv安装成功

Delve is a source level debugger for Go programs.

Delve enables you to interact with your program by controlling the execution of the process,
evaluating variables, and providing information of thread / goroutine state, CPU register state and more. The goal of this tool is to provide a simple yet powerful interface for debugging Go programs. Pass flags to the program you are debugging using `--`, for example: `dlv exec ./hello -- server --config conf/config.toml` Usage:
dlv [command] Available Commands:
attach Attach to running process and begin debugging.
connect Connect to a headless debug server.
core Examine a core dump.
dap [EXPERIMENTAL] Starts a TCP server communicating via Debug Adaptor Protocol (DAP).
debug Compile and begin debugging main package in current directory, or the package specified.
exec Execute a precompiled binary, and begin a debug session.
help Help about any command
run Deprecated command. Use 'debug' instead.
test Compile test binary and begin debugging program.
trace Compile and begin tracing program.
version Prints version. Flags:
--accept-multiclient Allows a headless server to accept multiple client connections.
--api-version int Selects API version when headless. New clients should use v2. Can be reset via RPCServer.SetApiVersion. See Documentation/api/json-rpc/README.md. (default 1)
--backend string Backend selection (see 'dlv help backend'). (default "default")
--build-flags string Build flags, to be passed to the compiler.
--check-go-version Checks that the version of Go in use is compatible with Delve. (default true)
--headless Run debug server only, in headless mode.
--init string Init file, executed by the terminal client.
-l, --listen string Debugging server listen address. (default "127.0.0.1:0")
--log Enable debugging server logging.
--log-dest string Writes logs to the specified file or file descriptor (see 'dlv help log').
--log-output string Comma separated list of components that should produce debug output (see 'dlv help log')
--only-same-user Only connections from the same user that started this instance of Delve are allowed to connect. (default true)
--wd string Working directory for running the program. (default ".") Additional help topics:
dlv backend Help about the --backend flag.
dlv log Help about logging flags. Use "dlv [command] --help" for more information about a command.

参考文档

  1. https://*.com/questions/39058823/how-to-use-delve-debugger-in-visual-studio-code
  2. https://github.com/derekparker/delve/
  3. https://github.com/golang/vscode-go
  4. https://juejin.im/entry/5e69a2276fb9a07cd11db163