Я искал везде и пробовал все, что мог, но отладка go exes в VSCODE для меня просто очень странная.
Если я шагаю по коду, отладчик иногда прыгает туда-сюда, как будто я переключаю потоки. В большинстве случаев, если я навожу курсор на переменные, ничего не происходит. Если я попытаюсь добавить их в качестве часов, я просто получу «недоступно». Я строю и запускаю из среды IDE.
У меня последняя версия go and delve. Я вижу, что мне следует избегать оптимизации компилятора с некоторыми настройками gcflags, но ничего не происходит. Без понятия, как добиться прогресса. Любые подсказки?
ОБНОВЛЕНИЕ: В конце концов, это была просто опечатка в задаче сборки, используемой VSCODE. Проблема действительно заключалась в оптимизации компилятора, которую нужно было отключить, используя следующий точный синтаксис:
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "Make Prog",
"type": "shell",
"command": "go",
"args": [
"install",
"-gcflags",
"-N -l",
"./..."
],
"group": {
"kind": "build",
"isDefault": true
},
}
]
}
Также важно то, что я использую «exec», а не «debug» для отладки исполняемого файла.