如何在指定目录下使用Delve运行Go编译后的二进制文件?
终端使用Delve调试的正确命令
根据你VS Code中的调试配置,对应的Delve终端命令需要同时指定输出路径和工作目录,以下是两种可行的执行方式:
方式1:在项目根目录执行
假设你的项目结构是:
项目根目录/ ├── src/ # 包含go.mod和源码 └── run/ └── workdir/ # 配置文件目录,二进制输出目标路径
直接在项目根目录运行:
dlv debug ./src --output ./run/workdir/myservicebin --wd ./run/workdir
方式2:在src目录执行
如果已经进入src目录,执行:
dlv debug . --output ../run/workdir/myservicebin --wd ../run/workdir
参数说明
--output [路径]:对应VS Code配置中的"output",指定编译后的二进制文件输出位置--wd [路径]:对应VS Code配置中的"cwd",设置调试会话的工作目录,确保程序能读取到run/workdir下的配置文件./src(或.):对应VS Code配置中的"program",指定要调试的源码目录
执行命令后,Delve会编译源码到指定路径,然后在指定工作目录启动调试会话,效果和VS Code配置完全一致。
内容的提问来源于stack exchange,提问作者Apollo
相关产品推荐
相关产品推荐

