可以从终端(包含在GoLand IDE中)进行调试,我想要做的是从终端运行.go文件时在断点处停止。 这是因为我想运行发送参数的脚本来验证是否已向.go脚本接收到参数。
谢谢。
答案 0 :(得分:2)
您可以直接从GoLand运行调试器,它将使用Go build然后钻研来运行应用程序。
但是,如果您想对二进制文件使用自定义构建过程,请像往常一样构建它,并确保指定-gcflags="all=-N -l"
(如果使用Go 1.10+,或者放下{{1} }(如果您使用的是1.9或更低版本)。从终端启动二进制文件,然后使用“运行|附加到本地进程”将调试器附加到二进制文件。
如果不是您要的内容,请澄清问题。
答案 1 :(得分:1)
是的,可以从GoLand进行调试!对我来说,下一个方法是最好的:
1)例如,我们有x.go
:
package main
import "fmt"
func main() {
name, ending := "World", "!"
ending2 := `)`
fmt.Printf("Hello %s %s%s \n", name, ending, ending2)
}
2)编辑您的调试配置:
3)在控制台的下一个命令中运行:
go build -gcflags='-N -l' x.go \
&& dlv --listen=:2345 --headless=true --api-version=2 exec ./x
4)现在放置断点,然后单击“调试”按钮。
Here ,您可以找到视频对我的感觉。
答案 2 :(得分:1)
在GoLand
中超级简单!
1)例如,我们有x.go
:
package main
import "fmt"
func main() {
name, ending := "World", "!"
ending2 := `)`
fmt.Printf("Hello %s %s%s \n", name, ending, ending2)
}
2)设置GOPATH
:
3)编辑您的调试配置。将Run kind
设置为目录,目的是调试目录中的所有go文件:
4)现在放置断点,然后单击“调试”按钮。
Here ,您可以找到视频对我的感觉。