答案是:go命令能正常运行且go mod init生成正确go.mod,仅说明基础环境就绪;vs code中go version报command not found,主因是path未生效,需在shell配置中添加go路径并从终端启动code。

go 命令能正常运行,且 go mod init 能生成正确的 go.mod,就代表环境搭好了——其余全是干扰项。
go version 报 command not found 怎么办
这是最常见、也最容易被忽略的卡点。不是没装好,是终端根本找不到 go 这个可执行文件。
- 检查安装路径是否真加进了
PATH:- macOS / Linux:运行
which go;没输出就说明没生效,去改~/.zshrc或~/.bash_profile,加上export PATH=$PATH:/usr/local/go/bin(手动解压安装)或export PATH=$PATH:/usr/local/opt/go/libexec/bin(Homebrew 安装) - Windows:在 PowerShell 里运行
Get-Command go;失败就打开「系统属性 → 高级 → 环境变量」,确认C:\Go\bin(或你自定义的GOROOT\bin)已加入系统或用户PATH
- macOS / Linux:运行
- 改完配置必须重启终端,或手动执行
source ~/.zshrc;别信安装器勾选的“添加到 PATH”就万事大吉
go mod init 生成空模块名或报错
项目根目录如果在 $GOPATH/src 下,go mod init 会强行按旧路径推导 module 名,比如变成 src/myproject,甚至静默失败。
- 切到任意非
GOPATH路径下新建项目,例如直接在桌面或~/dev里建目录 - 删除项目中残留的
vendor/目录(除非你明确要 vendor) - 运行
go env -w GO111MODULE=on强制启用模块模式(Go 1.21+ 默认开启,但某些 CI 或脚本可能关着)
VS Code 里 gopls 启动失败
gopls 不是独立插件,它依赖三件事同时成立:
go命令本身可用(go version能跑)当前文件夹有合法的
go.mod(或至少能成功go mod init)
Go语言(Golang)1.26.0下载Go语言(Golang)1.26.0版本提供 Go 官方 Windows amd64 MSI 安装包下载入口,版本号 1.26.0,可用于旧项目维护、兼容性测试和指定版本开发环境配置。
文件后缀是
.go,且不在vendor/或testdata/这类被语言服务器忽略的目录里如果刚配好环境,先在项目根目录手动跑一次
go mod init example.com/hello确保 VS Code 打开的是整个项目文件夹(不是某个子目录),且文件保存为 UTF-8 编码
不用额外装
gopls:现代 Go 安装包自带,gopls会由 VS Code 的 Go 插件自动调用
真正需要操心的只有三件事:PATH 是否生效、当前目录是否干净、GO111MODULE 是否开着。其他诸如 GOROOT 手动设置、GOPATH 指向哪、要不要装 golint,对写第一个 main.go 完全无关。
golang免费学习笔记(深入):立即使用
在学习笔记中,你将探索golang的核心概念和高级技巧!










