使用VSCode对Golang程序进行调试时会遇到数据截断问题,string只显示前64个字符,array只显示前64个数据。经查dlv是支持以参数方式来控制的。
发现VSCode的Golang插件里面有个叫做go.delveConfig
的配置,是可以设置dlv参数的。分享一下我的整个Golang配置:
"go.buildOnSave": "off",
"go.formatTool": "goimports",
"go.lintTool": "golangci-lint", //go get -u github.com/golangci/golangci-lint/cmd/golangci-lint
"go.autocompleteUnimportedPackages": true,
"go.gotoSymbol.includeImports": true,
"go.useLanguageServer": true,
"go.delveConfig": {
"dlvLoadConfig": {
"followPointers": true,
"maxVariableRecurse": 3,
"maxStringLen": 1024,
"maxArrayValues": 1024,
"maxStructFields": -1
},
},
"[go]": {
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": true
}
},
需要改的主要是maxStringLen
、maxArrayValues
、maxVariableRecurse
这三个字段。
Comments
注:如果长时间无法加载,请针对 disq.us | disquscdn.com | disqus.com 启用代理。