我正在使用GoLand IDE,并且有以下简单代码:
package main
import (
"fmt"
"time"
)
func main() {
start := time.Now()
time.Sleep(2 * time.Second)
elapsed := time.Since(start)
fmt.Println("elapsed: %s", elapsed)
}
当我运行它时,它可以正常工作,并且看到输出。
当我在其中一行中放置断点时,收到以下错误:
GOROOT=/usr/local/go #gosetup
GOPATH=/root/go #gosetup
/usr/local/go/bin/go build -o /tmp/___go_build_mymain_go -gcflags "all=-N -l" /root/go/src/myproj/mymain.go #gosetup
/home/myuser/Desktop/GoLand-2018.1.4/plugins/go/lib/dlv/linux/dlv --listen=localhost:35607 --headless=true --api-version=2 --backend=default exec /tmp/___go_build_mymain_go -- #gosetup
could not launch process: could not find .debug_line section in binary
Debugger finished with exit code 1
我没有找到有关此错误的任何信息。
我阅读了有关Go中调试的信息,并提到使用正在使用的-gcflags "all=-N -l"
。
失败的原因可能是什么?
答案 0 :(得分:3)
似乎您使用的是GoLand 2018.1.4的过时版本。升级到2018.2.2,问题将消失。