直接答案:推荐 settings.json
如果 VS Code Go 扩展已经启用 gopls,先把 Go 文件的默认格式化器固定为官方扩展,并在保存时执行 source.organizeImports:
{
"[go]": {
"editor.defaultFormatter": "golang.go",
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": "explicit"
}
},
"go.useLanguageServer": true
}
要点
editor.defaultFormatter: "golang.go" 选择官方 Go 扩展;source.organizeImports 调用 gopls 的整理 import 能力,通常会删除未使用 imports,并在符号能解析时补上缺失 import。
gopls organizeimports 会做什么
- 按 Go 工具链规则分组和排序 imports。
- 删除未使用的 import,避免 Go 编译器报错。
- 当当前文件里的标识符能在模块依赖中唯一解析时,补充缺失 import。
- 不会凭空猜测未知包;如果模块、依赖或工作区打开方式不正确,缺失 import 可能不会自动添加。
缺失 import 不自动添加时怎么排查
1. 打开模块根目录
VS Code 应打开包含 go.mod 的目录,而不是只打开单个文件。
2. 检查 go.mod
运行 go mod tidy,确认依赖可下载且没有模块路径错误。
3. 更新 gopls
在 VS Code 命令面板运行 Go: Install/Update Tools,勾选 gopls。
4. 排除格式化器冲突
如果安装了多个 Go 格式化扩展,保留 golang.go 作为默认格式化器。
相关章节
继续阅读 Go 环境安装与 VS Code 配置,或查看 Go 工具链与生态。