代码之家  ›  专栏  ›  技术社区  ›  07_05_GuyT

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

  •  5
  • 07_05_GuyT  · 技术社区  · 6 年前

    我有一个Golang代码,我通过go build为mac创建二进制代码 例如:

    build darwin amd64 myapp

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

    现在我想调试它,有没有办法用 Goland Intellij VSCode ?使用定期调试 delve 是从上面所有的IDE开始工作的,但是现在我想把它附加到我能够运行的二进制进程上,如果可能的话,有什么想法吗?

    1 回复  |  直到 6 年前
        1
  •  5
  •   dlsniper    6 年前

    如果您使用GoLand 2018.1以上版本,您应该能够使用Run | Attach to Local Process功能,它将允许您调试正在运行的二进制文件。

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

    此外,IDE可以在一次单击中启动二进制文件并对其进行调试,从而无需执行多个步骤。

    我可以提到的最后一个问题是,由于Apple在最新的开发工具中引入了一个bug,您目前无法通过Delve正确调试Go应用程序,因此无论您使用哪种编辑器。有关更多信息,请参阅我们的追踪器上的问题: https://youtrack.jetbrains.com/issue/GO-5527 在Delve的追踪器上: https://github.com/derekparker/delve/issues/1165

    编辑:

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