我正在尝试使用GoLand并听说调试器应该很棒,但我找不到任何解释如何设置的文档(GoLand处于预览阶段,所以这并不奇怪).我的用例:我正在编写一个REST API,我使用curl向其发送请求.有人可以一步一步地告诉我,如何开始使用调试器?
[编辑1](从注释中移出)当我单击运行/调试(或运行/运行)时,会显示一个窗口,要求我编辑配置.我可以选择几种配置,我尝试选择"Go application"但是Debug按钮永远不会变灰,我无法让它变成可点击的.我是GoLand的新手,我可能会遗漏一些明显的东西,但我找不到任何丢失的设置.
[编辑2]事实证明我的工作区不符合Go规范:我的代码不在名为src的目录中.现在就是这种情况,我可以单击Run/Debug并且GoLand似乎正在做正确的事情,除了它不会在断点处停止或者表现得像调试器,我的代码只是运行.
[编辑3]再次尝试,它的工作原理.有点.我不知道为什么它现在有用,即使它之前没有,我也没有改变任何东西.现在断点在某些方面起作用,而在其他方面起作用.或者调试器在断点处停止,但我会永远等待要加载的变量列表.嗯,这毕竟是预览......
[编辑4]我今天刚收到通知,提供了新版本的GoLand.我升级了,现在调试对我来说很好.
如果您的代码不在内部,Gogland将不会启用调试操作(尽管可以运行)src
.没有关于此的警告,所以解决这个问题可能真的很痛苦.
此外,根据您的项目结构,可能仍然无法进行调试.在这种情况下,删除所有运行配置并创建一个新配置可能会有所帮助.有关于此行为的错误报告.
PS:尽管OP提到了问题编辑的第一部分,但它认为在答案中值得一提.
我也遇到了同样的问题,我通过使用“运行应用程序”配置(在“运行/调试配置”窗口中)而不是“运行单个文件”配置来解决。
因此,转到Gogland的右上角,然后单击“编辑配置”。
然后,使用“ Go应用程序”配置文件添加新配置。
保存后,您应该能够调试代码。o /
启用此配置的一种简单方法是使用@ user1793301方法,然后右键单击要运行的文件,然后选择“调试'go run .go'”。
注意:我没有找到任何进一步的细节。
事实:“运行应用程序”配置的确会在运行二进制可执行文件之前对其进行构建。
事实:我可以看到控制台输出(在Goglang内部)是IDE使用DLV作为调试工具。
事实:我dlv debug
在DLV文档中找到了,它似乎可以编译和调试代码。
假设:Jetbrains的家伙没有实现它。或者至少不YET。