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运行,在相关位置下断点即可。

相关推荐
LDR00618 分钟前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术21 分钟前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园31 分钟前
C++20 Modules 模块详解
java·开发语言·spring
swordbob1 小时前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio
源分享2 小时前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
Luminous.2 小时前
C语言--day30
c语言·开发语言
何以解忧,唯有..2 小时前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang
謓泽2 小时前
C语言不是语法,是通往机器的地图。
c语言·开发语言
云水一下2 小时前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php
飞天狗1112 小时前
零基础JavaWeb入门——第五课第二小节:九大内置对象 · 第2个:response(响应对象)
java·开发语言