go环境搭建只需满足go命令运行、go mod拉包、编辑器跳转补全三条件;path未生效需重启终端,go111module和goproxy须配对(推荐goproxy.cn+direct),gopls是补全关键,模块初始化填逻辑路径而非目录名。

go 命令能运行、go mod 能拉包、编辑器能跳转补全——这三件事齐了,环境就算搭成了。其他都是可选项。
go version 报“不是内部或外部命令”?检查 PATH 和终端重启
这不是没装好,是系统没读到新环境变量。Windows 的 .msi 安装包虽会写入 Path,但已打开的 CMD/PowerShell 不会自动刷新。
- 必须关闭所有已有终端窗口,新开一个再执行
where go - 预期输出类似
C:\Go\bin\go.exe;若无输出,手动检查系统环境变量Path是否含C:\Go\bin - macOS/Linux 用户用
which go验证,注意~/.zshrc或~/.bashrc是否已source
go run 成功但加第三方库就报错?GO111MODULE 和 GOPROXY 没配对
Go 1.22+ 默认强制模块模式,但国内不配代理,go mod download 会卡在 proxy.golang.org 上不动。
- 执行这三条命令(永久生效):
go env -w GO111MODULE=on、go env -w GOPROXY=https://goproxy.cn,direct、go env -w GOSUMDB=sum.golang.org direct -
direct很关键:镜像找不到包时,自动回源校验,避免因缓存滞后导致checksum mismatch - 验证:运行
go env | grep GOPROXY(Linux/macOS)或go env | findstr GOPROXY(Windows)
VS Code 提示“install tools”却补全失效?gopls 没起来或路径不对
点「全部安装」反而容易装进废弃工具(如 gocode),干扰 gopls 启动。
- 只确保这 4 个可用:
gopls(必须)、go(自带)、dlv(调试用)、gofumpt(推荐格式化) - 手动安装
gopls:go install golang.org/x/tools/gopls@latest - 安装后重启 VS Code,或按
Ctrl+Shift+P→ 输入Developer: Reload Window - 检查
gopls是否在$GOPATH/bin下;Go 1.21+ 不建议设GOBIN,让它默认装到$GOPATH/bin
go mod init 该填什么?别套老 GOPATH 路径规则
Go 1.22+ 已彻底弃用强制 GOPATH,项目可放在任意目录,go mod init 填的是模块路径,不是文件夹名,也不必带域名。
- 本地练手:直接
go mod init myapp即可 - 将来要推 GitHub:填
go mod init github.com/yourname/myapp,方便别人import - 填错不影响本地运行,但协作时 import 路径不一致会导致编译失败
- 千万别把项目塞进
$GOPATH/src—— 这会触发旧式查找逻辑,引发cannot find package
go env -w 可能对 CMD 无效,统一用 PowerShell 或 WSL 更稳妥。golang免费学习笔记(深入):立即使用
在学习笔记中,你将探索golang的核心概念和高级技巧!











