我用: 构建了我的二进制文件,在go build -gcflags "$gc_flags" -o ./bin/grafana-server ./pkg/cmd/grafana-server
哪里。$gc_flags
'-N -l'
当我./bin/grafana-server
在调试器(Goland)中运行此文件并附加到它时,并非所有符号都已加载。此外,一些断点会显示以下消息:
/Users/.../file.go:186 处没有代码
我想调试的代码如下:
我添加到原始项目的部分是 lines 186-199
。您可以看到执行已进入for _, ..
循环(第 196 行),表明它query
有数据,我们能够使用它从数据库中提取数据query
via repo.Find(query)
。但是,query
在我的调试器中找不到:
所以我不确定此时发生了什么。不幸的是,我对 golang 真的很陌生;这让我很难取得任何进展。