Отладка Go с помощью VS Code и Delve

Запуск и отладка с помощью VS Code

VS Code от Microsoft - мой любимый редактор кода. я использовалтонныредакторов за последние 20 лет, и это, безусловно, лучший результат.

ЭтоОткрытый исходный код, быстро, даже на моем не очень последнем MacBook Pro, он никогда не ломался посреди чего-то, его можно взломать, и при этом он отлично работает прямо из коробки.

Все это потрясающе, но как отлаживать программы Go? Вы можете подумать, что для этого вам нужна тяжелая IDE, но это неправда. Это очень просто, сСпускаться, сделанДерек Паркер.

Сначала, конечно, вам нужно установитьофициальное расширение Go VS Code, иубедитесь, что $ GOPATH настроен.

После установки в Linux / Win вам просто нужно выполнить командуGo: Install/Update Tools. На Mac вам нужно скачать Delve черезВарить, набравbrew install go-delve/delve/delveв вашей любимой оболочке (которая должна бытьzsh!) - документы говорят о самоподписании, но Brew сделает это за вас.

Как только вы закончите, настройте конфигурацию отладчика.

Щелкните код VSменю отладкии нажмите «Начать отладку» или просто нажмитеF5.

VS Code помещает отладочную информацию в.vscode/launch.jsonфайл в корне вашего рабочего пространства. Это будет автоматически сгенерировано и должно работать из коробки для локальной отладки:

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

Согласно документации, параметр режима может быть установлен на:

debugдля компиляции и отладки текущей программыtestдля отладки тестов (для отладки одного теста введите -test.run и имя теста в качестве аргументов)execдля запуска предварительно созданного двоичного файла, указанного в программе, например"program":"${workspaceRoot}/mybin".remoteдля удаленной отладки (см.официальная документация по удаленной отладке)

Возникли проблемы? Вот некоторыеобщие ловушки.

Как только это будет сделано, Delve будет готов к работе!

Go Debugging with VS Code and Delve

Вы можете видеть, что это довольно стандартный отладчик с локальным и глобальнымпроверка переменных, возможностьсмотреть конкретные переменные, товизуализация стека вызововиконтрольные точки.

Что мне особенно нравится в отладке Go и переходе к вызовам библиотеки, так это то, что стандартная библиотека очень чистая, хорошо документирована и читаема, а с помощью отладки вы узнаете много вещей о том, как все работает внутри.

Удачной отладки!


Больше руководств по go: