Vscode调试golang的debug

配置启动项

  打开调试面板:VSCode->查看->调试

  添加调试目标:点击添加配置

  添加目标调试配置

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch",
            "type": "go",
            "request": "launch",
            "mode": "debug",
            "remotePath": "",
            "port": 2345,
            "host": "127.0.0.1",
            "program": "${fileDirname}",
            "env": {
                "GOPATH":"D:/Develop/vscodegolang"
            },
            "args": [],
            "showLog": true
        }
    ]
}

    其中"post","host"都是go插件自动生成的,“env”为设置环境变量,设置为工程目录包含bin、src的文件夹

准备调试插件

  选中要调试的main.go,点击F5会报错误提示:Failded to continue:"Cannot find Delve debugger. Install from https://github.com/derekparker/delve & ensure it is in your "GOPATH/bin" or "PATH"

  使用命令编译调试器:go get github.com/derekparker/delve/cmd/dlv  将dlv调试器放在GOPATH的bin目录下

开始调试

  选中要调试的main.go,点击F5可以开始调试

  调试快捷键:

      F9 切换断点

      F10 Step over

      F11 Step in

      Shift+F11 Step out

  注意:有些结构体成员法务直接显示时,可以直接选中变量名,添加到监视,或者右键点击"调试:求值"

多项目调试

  在launch.json中可以添加多组调试入口,通过调试面板中选中对应的配置开启不同目标的调试

在launch.json中可以添加多组调试入口, 通过调试面板中选中对应的配置开启不同目标的调试

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "client",
            "type": "go",
            "request": "launch",
            "mode": "debug",
            "remotePath": "",
            "port": 2345,
            "host": "127.0.0.1",
            "program": "${fileDirname}",
            "env": {
                "GOPATH":"D:/Develop/vscodegolang"
            },
            "args": [],
            "showLog": true
        },

        {
            "name": "server",
            "type": "go",
            "request": "launch",
            "mode": "debug",
            "remotePath": "",
            "port": 2345,
            "host": "127.0.0.1",
            "program": "${workspaceRoot}/src/server",
            "env": {
                "GOPATH":"D:/Develop/vscodegolang"
            },
            "args": [],
            "showLog": true
        }
    ]
}
"program"中的"${fileDirname}"是以当前选中文件作为启动点

更建议使用"program"的"${workspaceRoot}", 以包名作为启动点的方式进行配置

  

原文地址:https://www.cnblogs.com/parallel-Y/p/11577430.html

时间: 2024-07-30 08:46:56

Vscode调试golang的debug的相关文章

vscode调试golang环境搭建及配置

准备VSCode 在官网下载最新版的VSCode: 安装Golang插件 打开扩展面板 VSCode->查看->扩展 找到Go插件 在搜索框里输入Go, 找到第二行写有 Rich Go language support for Visual Studio Code的插件, 点击安装 注意不是排名最高的 重启编辑器 配置启动项 打开调试面板 VSCode->查看->调试 添加调试目标 在"没有调试"的下拉框中点击"添加配置.." 添加目标调试配

mac下配置gdb调试golang

mac下配置gdb调试golang 原文链接 https://sourceware.org/gdb/wiki/BuildingOnDarwin Building GDB for Darwin Creating the binary for Darwin isn't very difficult.  Download a release snapshot or get the current source via git/CVS/FTP, then configure and make as us

vscode 调试node.js

在开发的过程中,几乎不可能一次性就能写出毫无破绽的程序,断点调试代码是一个普遍的需求. 作为前端开发工程师,以往我们开发的JavaScript程序都运行在浏览器端,利用Chrome提供的开发者工具就可以方便的进行源码断点调试.其步骤有四,详情不表,粗略概括如下: 打开Chrome开发者工具: 点击进入Sources标签页,在页面的左侧就能看到JS代码的目录: 找到需要设置断点的源文件,在需要中断的哪行代码左侧单击鼠标左键,就可以设置断点,如果你的代码是uglify过的,则需导入相应的source

vscode调试html文件

1. vscode调试html文件 1.1. 使用Debugger for Chrome进行调试 1.1.1. 基于本地file配置方式调试 1.1.2. 基于服务端配置方式调试 1.1.2.1. 启动server端 1.1.2.2. 配置vscode 1.2. 使用Nodejs配置调试 1.3. 参考 1. vscode调试html文件 主要说明使用使用Debugger for Chrome插件如何配置,以及Nodejs的方式调试. 本文的配置方式是基于deepin系统的,适用于所有debia

vscode安装golang插件

在vscode中编辑.调试golang时会自动安装插件,然而大部分均会失败. 解决办法:手动安装 1.下载插件 1 cd $GOPATH/src 2 mkdir -p golang.org/x 3 cd golang.org/x 4 git clone https://github.com/golang/tools.git tools 5 git clone https://github.com/golang/lint.git lint 2.安装插件 1 cd $GOPATH 2 go inst

vscode调试php

xdebug调试vscode 下载xdebug.dll扩展库 php.ini配置 1 [XDebug] 2 xdebug.remote_enable = 1 3 xdebug.remote_autostart = 1 4 zend_extension="D:\phpstudy-2018\PHPTutorial\php\php-5.5.38\ext\php_xdebug.dll" vscode 安装插件 php debug,php xdebug  1 add configuration:

golang remote debug和docker debug

在编写 Go 代码的时候,因为很多时候都是需要调试服务器上的代码的,作为一个年长的工程师,肯定不能用 log.Printf 来调试问题,所以我选择了 delve 这个工具,通过 delve 我可以像本地调试代码一样在 Goland 中调试 Go 代码,很是惬意.如果要说缺点的话,那就是在服务端启动 delve 的 server 端之后,必须在一定时间内(不知道具体多久)连接上它,不然会关闭:同时,在我断开调试之后,server 会自动关闭,如果我要再次调试,那就必须再运行一次 server(当然

VS中生成、清理项目、调试、开始执行(不调试)、Debug 和 Release等之间的区别

一.生成和重新生成 "生成"的时候只对你改动过的文件重新生成没有改动过的文件不会重新生成: "重新生成"是对所有的文件都重新生成. 以cpp为例当你只改动某些.cpp之类的文件的时候可以用生成省了编译没有改动的那些些文件的时间:但是改动了某些.h之类的文件最好用重新生成,因为有可能能有些文件包含.h文件也需要重新编译 选择生成或生成解决方案,将只编译自上次生成以来更改过的那些些项目文件和组件 注意 如果解决方案中包括多个项目,则生成命令将变成生成解决方案. 选择重新

VSCode调试go

VSCode调试go语言出现:exec: "gcc": executable file not found in %PATH% 1.问题描述 由于安装VS15 Preview 5,搞的系统由重新安装一次:在用vscdoe编译go语言时,出现以下问题: # odbcexec: "gcc": executable file not found in %PATH%exit status 2 2.解决方案 2.1 mingw 64 MinGW分为较早开发的MinGW32和之