在Visual Studio代码中运行Golang

时间:2016-06-28 15:15:56

标签: windows debugging go visual-studio-code

任何人都可以告诉我如何在Windows中运行并使用调试器来逐步执行Windows中的简单程序?

我从这个页面中引用了一个参考:

https://marketplace.visualstudio.com/items?itemName=lukehoban.Go

但是我无法运行代码。我目前的GOPATH是C:\ dev \ go。 如果需要任何其他细节,请告诉我。

3 个答案:

答案 0 :(得分:7)

首先,调试器不是Go的一部分。 Microsoft堆栈下的C#,F#和其他托管语言都有调试器,因为它是.NET堆栈的一部分。

其次,Visual Studio Code!= Visual Studio。 VS Code是一款轻量级的IDE,旨在通过创建跑步者来扩展以支持各种语言。但事情就是这样:其他人需要编写跑步者,希望他们使用调试器(如果可用)创建无缝体验。这就是为什么你有多个版本的语言运行器。

换句话说:如果你想要一个兼容VSCode的Debugger + Runner for X语言,请阅读X语言,了解如何调试它。

Go也不例外。 You must read the language spec, and specifically I recommend Effective Go as it explains why you don't need a Debugger

-

现在有了所有这些说法,社区已经聚集在一起并为GoLang创建了一些调试器。 It is called Delve

学习如何为VS Code安装它超出了这篇文章。我建议找一个支持Go编码和Delve的VSCode包(至少有一个,因为我已经使用过它了。)

意见:在VSCode中调试Go是一种很好的体验。我已经试过了。虽然视觉上令人愉悦,但我回到了Atom,因为它支持许多其他Go实用程序和Linters - 大多数在VSCode中都缺少(有些软件包不允许我修改配置以排除某些Go工作流程)。

编辑2018:几年后,VSCode已经成熟了!我已经将100%切换到VSCode作为我的主编辑。

答案 1 :(得分:1)

在Windows上安装Debugger for Go语言的一个可能选项是:

go get github.com/derekparker/delve/cmd/dlv

之后,Visual Studio Code(vscode)将能够运行(调试)启动配置。

默认情况下,文件launch.json指向项目的根目录:

"program": "${workspaceRoot}"

如果您想将其配置到另一个位置(例如您的/ package / foo / dir),请按以下方式对其进行编辑:

"program": "${workspaceRoot}/foo/dir"

答案 2 :(得分:1)

如果您想调试在应用程序服务器内运行的Go模块,可以查看debugging golang appengine module with visual studio code

解释是针对Appengine服务器的,但您可以轻松了解如何使用Delve从vscode进行远程调试。