VSCode开启Go文件formatOnSave后自动添加go:build标签的禁用方法咨询
解决VSCode保存Go文件时自动添加//go:build标签的问题
这个问题我之前也碰到过!其实是VSCode里的Go语言服务器gopls在搞事情——它默认会把旧的// +build构建标签自动转换成Go 1.17+推荐的//go:build格式,刚好被你的保存自动格式化触发了。要禁用这个行为,你可以通过调整gopls的设置来实现,具体步骤如下:
打开VSCode的用户设置JSON文件:按下快捷键
Ctrl+,(Windows/Linux)或Cmd+,(Mac)打开设置面板,然后点击右上角的「打开设置(JSON)」图标(类似大括号的那个)。在配置里添加或修改gopls的分析器设置,禁用
buildtag分析器:"gopls": { "analyses": { "buildtag": false } }这个
buildtag分析器就是专门负责检查并自动转换旧构建标签的,关掉它就不会再自动添加//go:build标签了。如果你不想完全禁用所有代码修复动作,也可以更精细地控制保存时的代码动作,在
[go]的配置里调整:"[go]": { "editor.formatOnSave": true, "editor.codeActionsOnSave": { "source.fixAll.gopls": { "buildtag": false } } }最后,重启VSCode或者按下
Ctrl+Shift+P打开命令面板,选择「Reload Window」让设置生效。之后再保存带有// +build integration标签的Go文件,就只会格式化代码,不会自动添加新的构建标签啦。
内容的提问来源于stack exchange,提问作者rexagod
相关产品推荐
相关产品推荐

