Visual Studio Code中实现Go语言自动导包教程

一、在VS Code中安装Go需要的扩展

首先,按住Ctrl + Shift + P调出命令面板,输入

复制代码
Go:Install/Update Tools


全选安装,等待安装完毕

显示这行输出,就代表安装成功了

tips:如果你出现了下面的报错

2026-01-08 15:25:29.074 [info] dlv: failed to install dlv(github.com/go-delve/delve/cmd/dlv@latest): Error: Command failed: A:\Go\bin\go.exe install -v github.com/go-delve/delve/cmd/dlv@latest

go: downloading github.com/go-delve/delve v1.26.0

go: github.com/go-delve/delve@v1.26.0 requires go >= 1.24; switching to go1.24.11

go: downloading go1.24.11 (windows/amd64)

go: download go1.24.11: golang.org/toolchain@v0.0.1-go1.24.11.windows-amd64: verifying module: checksum database disabled by GOSUMDB=off

2026-01-08 15:25:29.074 [info] gopls: failed to install gopls(golang.org/x/tools/gopls@latest): Error: Command failed: A:\Go\bin\go.exe install -v golang.org/x/tools/gopls@latest

go: downloading golang.org/x/tools v0.40.0

go: golang.org/x/tools/gopls@v0.21.0 requires go >= 1.25; switching to go1.25.5

go: downloading go1.25.5 (windows/amd64)

go: download go1.25.5: golang.org/toolchain@v0.0.1-go1.25.5.windows-amd64: verifying module: checksum database disabled by GOSUMDB=off

解决步骤
1.设置 Go 代理

复制代码
go env -w GOPROXY=https://goproxy.cn,direct

2.开启校验和数据库(关键)

你的报错明确写着 checksum database disabled by GOSUMDB=off。

这意味着你之前(或者某些安装教程)强制关闭了安全校验。开启它才能下载官方工具。

运行以下命令重置为默认(或开启):

复制代码
go env -w GOSUMDB=sum.golang.org

如果这条之后仍然连不上,可以换成国内镜像:

复制代码
go env -w GOSUMDB=sum.golang.google.cn

3.检查系统时间(重要)

如果你现在的电脑时间有误,请改回正确的时间。

4.重新安装工具

完成上述设置后,再次尝试安装 VSCode 提示的工具。

你可以选择在 VSCode 终端手动运行,也可以点 VSCode 的 Install All。

手动安装命令

复制代码
go install -v github.com/go-delve/delve/cmd/dlv@latest
go install -v golang.org/x/tools/gopls@latest

使用下面命令,正常输出版本号就表示能运行

复制代码
go run golang.org/x/tools/gopls@latest version

二、导入go依赖包

将鼠标悬浮到你想导入包的代码上

选择go get package github.com/gin-gonic/gin

等待导包完成,就可以实现vscode中的自动导包了

tips

以下是几条命令解释:

GOROOT:通常是你安装 Go 软件的目录,比如 D:\Go。

GOPATH:是你的"工作空间"目录,通常在 C:\Users\你的用户名\go。

GOPATH 的"开发模式"已经废弃

Go 官方 Wiki 明确说:GOPATH development mode(把代码放在 GOPATH/src 下面开发)已经废弃,Go 1.16 以后默认就是模块模式,以后 GOPATH mode 会完全移除

GOPATH 现在主要用途只剩 3 件事

在使用 Go 模块(你现在的 backend 目录有 go.mod)的情况下,GOPATH 变量的作用主要是https://go.dev/wiki/GOPATH:
go install 安装命令行工具(比如 gopls、dlv)到

$GOPATH/bin(如果没单独设置 GOBIN)
go get 缓存模块到

$GOPATH/pkg/mod
校验和数据库缓存

$GOPATH/pkg/sumdb

建议保留唯一的D:\GoProjects\library 作为唯一的 GOPATH

终端直接修改命令:

复制代码
go env -w GOPATH="D:\GoProjects\library"

使用下面命令查看当前GOPATH

复制代码
go env GOPATH

如果出现以下报错:

go: golang.org/x/tools/gopls@v0.21.0 requires go >= 1.25; switching to go1.25.5

有两种方案解决
方案一:升级 Go 版本(推荐)

1、下载最新的 Go 版本

访问 https://go.dev/dl/

下载 Windows 版本的 Go 1.23 或更高版本

2、安装新版本

运行安装程序

重启 VSCode

3、验证安装

使用以下命令验证go版本

复制代码
go version

4、重新安装 gopls

复制代码
go install -v golang.org/x/tools/gopls@latest

方案二:降级 gopls 版本(如果不便升级 Go)

如果暂时无法升级 Go 版本,可以使用与 Go 1.22.3 兼容的 gopls 版本:

1、安装兼容的 gopls 版本

复制代码
go install -v golang.org/x/tools/gopls@v0.15.0

不确定版本是否匹配,只是举个例子

2、验证安装

结论:经过验证目前最新版本Go 1.25.5 + gopls 0.21.0是匹配的

本文作者能力有限,如有不足之处还望在评论区指出,开发者们可以一起进步。

相关推荐
源代码•宸1 小时前
Golang面试题库(Context、Channel)
后端·面试·golang·context·channel·sudog·cancelctx
Wzx1980122 小时前
go聊天室接入mysql的项目docker部署流程
mysql·docker·golang
lead520lyq2 小时前
Golang GPRC流式传输案例
服务器·开发语言·golang
只是懒得想了2 小时前
Go语言ORM深度解析:GORM、XORM与entgo实战对比及最佳实践
开发语言·数据库·后端·golang
molaifeng2 小时前
从 Stdio 到 HTTP:用 Go 打造按需加载的 SQLite MCP Server
http·golang·sqlite·mcp
少年强则国强2 小时前
anaconda安装配置pycharm
ide·python·pycharm
源代码•宸2 小时前
Leetcode—144. 二叉树的前序遍历【简单】
经验分享·算法·leetcode·面试·职场和发展·golang·dfs
hbstream海之滨视频网络技术2 小时前
国内AI编程IDE对比(二):从零构建桌面应用实测
ide·ai编程
2601_949146532 小时前
Go短信验证码接口开发实践:编写一个可直接运行的发送示例
服务器·microsoft·golang
只是懒得想了2 小时前
Go服务限流实战:基于golang.org/x/time/rate与uber-go/ratelimit的深度解析
开发语言·后端·golang