Jadual Kandungan
关键字
准备VSCode
安装Golang插件
配置启动项
准备调试插件
开始调试
多项目调试
Rumah alat pembangunan VSCode 详解VSCode中如何调试Golang工程

详解VSCode中如何调试Golang工程

Apr 12, 2021 am 11:26 AM
golang vscode

本篇文章给大家介绍一下使用VSCode调试Golang工程的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

详解VSCode中如何调试Golang工程

推荐学习:《vscode教程

关键字

  • 最简单的调试攻略
  • 多项目调试, 适用个人开发和项目开发
  • 无需修改系统环境变量

准备VSCode

在官网下载最新版的VSCode:

Visual Studio Code - Code Editing. Redefined**

安装Golang插件

  • 打开扩展面板 VSCode->查看->扩展
  • 找到Go插件 在搜索框里输入Go, 找到第二行写有 Rich Go language support for Visual Studio Code的插件, 点击安装 注意不是排名最高的
  • 重启编辑器

配置启动项

  • 打开调试面板 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         }     ] }
Salin selepas log masuk

其中: "port", "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"
Salin selepas log masuk

我们使用go命令行编译调试器

go get github.com/derekparker/delve/cmd/dlv
Salin selepas log masuk

将dlv调试器放在GOPATH(工程目录)的bin目录下

开始调试

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

调试快捷键和Visual Studio系一致

  • F9 切换断点
  • F10 Step over
  • F11 Step in
  • Shift+F11 Step out

注意点

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

多项目调试

在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
        }
    ]
}
Salin selepas log masuk

"program"中的"${fileDirname}"是以当前选中文件作为启动点

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

更多编程相关知识,请访问:编程视频!!

Atas ialah kandungan terperinci 详解VSCode中如何调试Golang工程. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Tujuan Golang: Membina sistem yang cekap dan berskala Tujuan Golang: Membina sistem yang cekap dan berskala Apr 09, 2025 pm 05:17 PM

Pergi bahasa berfungsi dengan baik dalam membina sistem yang cekap dan berskala. Kelebihannya termasuk: 1. Prestasi Tinggi: Disusun ke dalam Kod Mesin, Kelajuan Berjalan Cepat; 2. Pengaturcaraan serentak: Memudahkan multitasking melalui goroutine dan saluran; 3. Kesederhanaan: sintaks ringkas, mengurangkan kos pembelajaran dan penyelenggaraan; 4. Cross-Platform: Menyokong kompilasi silang platform, penggunaan mudah.

Bagaimana untuk melaksanakan fungsi seretan panel dan drop pelarasan yang serupa dengan vscode dalam pembangunan front-end? Bagaimana untuk melaksanakan fungsi seretan panel dan drop pelarasan yang serupa dengan vscode dalam pembangunan front-end? Apr 04, 2025 pm 02:06 PM

Terokai pelaksanaan fungsi seretan panel dan drop panel seperti VSCode di bahagian depan. Dalam pembangunan front-end, bagaimana untuk melaksanakan vscode seperti ...

Bahasa pengaturcaraan yang paling patut diberi perhatian dalam 5 tahun Bahasa pengaturcaraan yang paling patut diberi perhatian dalam 5 tahun Apr 04, 2025 am 07:18 AM

Ini adalah selaras dengan trend yang baru muncul. Mari kita menyelam lebih mendalam ke dalam bahasa pengaturcaraan terkemuka pada tahun 2025, kekuatan mereka, dan mengapa anda harus melabur dalam menguasai mereka. Python bahasa adalah yang paling serba boleh; Ia berfungsi dengan baik dalam kecerdasan buatan dan sains data, dan ia juga berfungsi dengan baik dalam pembangunan web. Di antara banyak bahasa, Python mempunyai bilangan perpustakaan terbesar dan sokongan yang kuat sebagai tambahan kepada komuniti yang besar. Python akan melakukan mukjizat dalam bidang kecerdasan buatan dan teknologi yang berkaitan dengan mesin. JavaScript JavaScript kekal di tengah -tengah pembangunan web kontemporari (proses pembangunan antara muka interaktif). Ia berfungsi dengan rangka kerja lain, termasuk React dan Sudut, untuk membolehkan aplikasi web atau mudah alih

Apakah alat pembangunan untuk program H5 dan mini? Apakah alat pembangunan untuk program H5 dan mini? Apr 06, 2025 am 09:54 AM

Cadangan Alat Pembangunan H5: VSCode, Webstorm, Atom, Kurungan, Teks Sublime; Alat Pembangunan Program Mini: Alat Pembangun WeChat, Alat Pemaju Program Mini Alipay, IDE Program Mini Smart Baidu, Alat Pemaju Program Mini Toutiao, Taro.

Hari - Konfigurasikan Nixos untuk menggunakan debugger C di vscode Hari - Konfigurasikan Nixos untuk menggunakan debugger C di vscode Apr 04, 2025 am 10:06 AM

Saya memasang semua pakej di Environment.SystemPackages di /etc/nixos/configuration.nix. Jadi, sebagai tambahan kepada GCC, untuk menggunakan debugger, anda juga perlu: Environment.SystemPackages = withPkgs; [... vscode-fhsgdb] Menggunakan vscode-fhs menjadikan kerja lebih mudah, dan memasang pakej vscode (tanpa FHS) akan menyebabkan kesulitan. Untuk maklumat lanjut, sila klik di sini. Di VSCODE, pasangkan pelanjutan ini: untuk kebolehpercayaan yang lebih besar, saya "memaksa" untuk mewujudkan jalan: persekitaran.vari

Bolehkah saya menggunakan mysql di vscode Bolehkah saya menggunakan mysql di vscode Apr 08, 2025 pm 03:18 PM

Mengendalikan MySQL dalam kod VS tidak terhad kepada penyambung ke pangkalan data, tetapi juga melibatkan pemahaman mekanisme MySQL dan mengoptimumkan pernyataan SQL. Dengan bantuan pemalam sambungan, pengguna boleh: Sambungkan ke pangkalan data MySQL. Memahami prinsip indeks, ciri -ciri transaksi dan teknik pengoptimuman. Gunakan Penyiapan Automatik Kod, Penonjolan Sintaks, Ralat Ralat dan Fungsi Debugging. Masalah penyelesaian masalah seperti kegagalan sambungan dan masa tamat pelaksanaan. Menguasai prinsip asas pangkalan data dan teknik pengoptimuman SQL untuk menulis kod pangkalan data yang cekap.

Golang dalam Tindakan: Contoh dan aplikasi dunia nyata Golang dalam Tindakan: Contoh dan aplikasi dunia nyata Apr 12, 2025 am 12:11 AM

Golang cemerlang dalam aplikasi praktikal dan terkenal dengan kesederhanaan, kecekapan dan kesesuaiannya. 1) Pengaturcaraan serentak dilaksanakan melalui goroutine dan saluran, 2) Kod fleksibel ditulis menggunakan antara muka dan polimorfisme, 3) memudahkan pengaturcaraan rangkaian dengan pakej bersih/HTTP, 4) Membina crawler serentak yang cekap, 5) Debugging dan mengoptimumkan melalui alat dan amalan terbaik.

See all articles