windows下,golang+vscode+delve 远程调试

1 先在远程服务器安装golang和delve

golang的安装,通过官网直接下载安装包安装接口

复制代码
go install github.com/go-delve/delve/cmd/dlv@latest

如果dlv和golang版本不匹配,这里把@latest换成匹配的版本,比如@1.20.0

2 编译带调试信息的程序

go build -gcflags "all=-N -l"

这里go.mod文件在同级目录下,比如编译出的程序名为Test.exe

3 在远程机器上运行程序

dlv --listen=:2345 --headless=true --api-version=2 --accept-multiclient --log exec ./Test.exe -- -d

这里我的程序运行需要传递命令行参数 -d

4 本机配置launch.json并运行

javascript 复制代码
{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Remote Debug",
            "type": "go",
            "request": "attach",
            "mode": "remote",
            //"remotePath": "D:\\Test",
            "port": 2345,                
            "host": "10.10.0.37", 
            "cwd": "${workspaceFolder}" 
        }
    ]
}

这里,因为是直接调试exe,远程机器上并没有部署源代码,不需要"remotePath"这一项,配置完launch.json后,直接F5运行,在相关位置下断点即可。

相关推荐
枫叶丹416 小时前
【Qt开发】Qt窗口(九) -> QFontDialog 字体对话框
c语言·开发语言·数据库·c++·qt
海上彼尚17 小时前
Go之路 - 7.go的结构体
开发语言·后端·golang
源代码•宸1 天前
分布式缓存-GO(分布式算法之一致性哈希、缓存对外服务化)
开发语言·经验分享·分布式·后端·算法·缓存·golang
云和数据.ChenGuang1 天前
PHP-FPM返回的File not found.”的本质
开发语言·php·运维工程师·运维技术
R.lin1 天前
Java 8日期时间API完全指南
java·开发语言·python
yangpipi-1 天前
《C++并发编程实战》 第4章 并发操作的同步
开发语言·c++
火钳游侠1 天前
java单行注释,多行注释,文档注释
java·开发语言
有趣的我1 天前
C++ 多态介绍
开发语言·c++
fie88891 天前
波束赋形MATLAB代码实现
开发语言·matlab
丘狸尾1 天前
gradio uv无法add
开发语言·python