调试 Golang 代码并将其附加到本地进程

Debug Golang code and attach it to local process

我有一个 Golang 代码,我通过 go build 从它的二进制文件中为 mac 创建了一个 Golang 代码 喜欢:

build darwin amd64 myapp

目前我能够运行二进制文件并查看日志。

现在我想调试它,有没有办法用 GolandIntellijVSCode 调试二进制文件?使用 delve 的常规调试在上面的所有 IDE 中工作,但现在我想将它附加到我能够 运行 的二进制进程,知道是否可能吗?

如果您使用 GoLand 2018.1+,您应该可以使用 运行 |附加到本地进程功能,它将允许您调试 运行 二进制文件。

我建议您在编译二进制文件时关闭所有优化并使用 Go 1.10+ 编译以获得最佳调试体验。

此外,IDE 只需单击一下即可启动二进制文件并进行调试,无需执行多个步骤。

我要提的最后一个问题是,由于 Apple 在最新的开发人员工具。有关详细信息,请参阅我们跟踪器上的问题:https://youtrack.jetbrains.com/issue/GO-5527 and on Delve's tracker: https://github.com/derekparker/delve/issues/1165

编辑:

上述问题已在 GoLand 2018.1.1 中解决。