Я пытаюсь отладить однофайловое приложение Go, работающее в док-контейнере, использующее delve в контейнере и использующее GoLand на ноутбуке Mac.
Когда я запускаю локальный отладчик, мои точки остановаРабота.Когда я использую конфигурацию «Go Remote», все мои точки останова превращаются в косую черту, и в записке говорится «не удалось найти FILENAME».
Я убедился, что мои исходные файлы находятся по тому же относительному пути кGOPATH как на сервере (контейнере), так и на клиенте.
Я использую Go 1.12.5 в контейнере, с помощью этой команды delve: dlv debug --headless --listen=:8044 --api-version=2 --accept-multiclient
Он правильно строит мой src/github.com/flinkt/reverseProxy/reverseProxy.go
to bin/reverseProxy
и начинает вывод ожидаемых сообщений при получении ожидаемых http-запросов.
Моя сборка GoLand - 2019.1.Конфигурация обращается к localhost 8043 и не имеет других заполненных полей.
Контейнер Docker монтирует исходный код, так что я уверен, что они смотрят на те же самые исходные файлы.
Конфигурация проекта имеет корневой каталог содержимого прямо над каталогами src/
и bin/
, и он также устанавливается как проект GOPATH.Глобальной GOPATH не существует, и все зависимости находятся в дереве src/
.Флажок для индексирования всего отмечен.
Предложения о том, почему моя IDE не видит мой источник или не останавливается на моих точках останова?