今天算是入职新公司的第一天,配置好开发环境后,尝试用 GoLand 来启动服务,结果报了:Version of Delve is too old for this version of Go (maximum supported version 1.13, suppress this error with --check-go-version=false)
这个错误。
查询后发现这个是 JetBrain 在将 delve 嵌入到 他们的 IDE 时导致的 bug,按照官方的说法是升级 IDE 就可以解决了。详细讨论见这个 issue:https://github.com/go-delve/delve/issues/1710
但是我的 ToolBox 在 Check for updates 时没有响应,所以需要通过其他方式进行了解决。
更新 dlv,并将 GoLand 中的 dlv 路径指向更新后的路径
1) go get -u github.com/go-delve/delve/cmd/dlv
2) 执行以下命令并将打印的路径复制下来:
1 | ➜ echo `go env | grep GOPATH | cut -d "\"" -f 2`/bin/dlv |
3) 在 GoLand 中 Help -> Edit Custom Properties(之前没编辑过会提示新建)
4) 新增一项 dlv.path={你复制的路径}
,比如我的:
1 | dlv.path=/Users/jiapan/go/bin/dlv |
再次启动服务,问题解决。
delve 是 go 语言的 debug 工具,delve 的意思是:钻研、探索,用这个来命名一个 debug 工具还是非常形象的。