go 1.21+ 安装无需 gopath,国内用户需设 go111module=on、goproxy=https://goproxy.cn,direct 和 gosumdb=off,并正确配置 path 与 vs code launch.json 环境变量。

Go 1.21+ 安装后直接 go mod init 就能写项目,不用配 GOPATH,也不用开代理——只要国内用户把 GO111MODULE 设为 on 并配置好代理,就能秒级拉依赖。
Mac / Linux 下用官方二进制包安装 Go(别用 brew)
brew 安装的 Go 常年滞后,且升级后可能残留旧版本环境变量,导致 go version 和实际执行路径不一致。直接去 https://www.php.cn/link/81836b7cd16991abb7febfd7832927fd 下载最新 go1.21.x.darwin-arm64.tar.gz 或 .tar.gz 包更可控。
- 解压到
/usr/local:sudo tar -C /usr/local -xzf go%201.21.x.darwin-arm64.tar.gz - 把
/usr/local/go/bin加进$PATH(写入~/.zshrc或~/.bash_profile) - 执行
source ~/.zshrc && go version确认输出带go1.21字样 - 检查
which go是否指向/usr/local/go/bin/go,不是/opt/homebrew/bin/go
Windows 上绕过 PowerShell 执行策略限制
双击安装包(go1.21.x.windows-amd64.msi)后,PowerShell 默认禁止运行本地脚本,导致 go run 报错 The term 'go' is not recognized,其实只是 PATH 没刷进来。
Go语言(Golang)1.26.0版本提供 Go 官方 Windows amd64 MSI 安装包下载入口,版本号 1.26.0,可用于旧项目维护、兼容性测试和指定版本开发环境配置。
- 重启终端(CMD 或 PowerShell)——不是新建标签页,是彻底关掉再开
- 运行
echo %PATH%,确认含C:\Program Files\Go\bin - 若仍报错,手动在「系统属性 → 高级 → 环境变量」里把该路径加进「系统变量」的
Path - 避免用 VS Code 的集成终端启动前未读取新环境变量,可右键菜单选「New Terminal」而非 Ctrl+`
国内依赖拉取失败?只设两个环境变量就够了
Go module 依赖默认走 proxy.golang.org,国内直连超时或 403。不需要改 go env -w 全局配置,只需在项目根目录下设两个变量即可生效,且不影响其他项目。
- 在项目目录执行:
go env -w GOPROXY=https://goproxy.cn,direct - 再执行:
go env -w GOSUMDB=off(或sum.golang.org国内有时不稳定,关掉更稳) -
go mod init myapp后,go get github.com/gin-gonic/gin应在 2 秒内完成 - 注意:不要设
GO111MODULE=auto,必须为on,否则go.mod不自动生成
VS Code 调试器无法断点?检查 launch.json 里的 program 字段
常见现象:加了断点但调试时直接跑完,没停住。根本原因常是 launch.json 中 program 指向了错误路径,比如写成 "./main.go" 而非 "${workspaceFolder}/main.go",或漏了 env 导致模块代理失效。
- 确保
launch.json中program是绝对路径,推荐用${workspaceFolder}变量 - 加上
"env": { "GOPROXY": "https://goproxy.cn,direct", "GO111MODULE": "on" } - 调试前先终端执行
go build -o ./tmp/main .看是否成功,排除语法/依赖问题 - VS Code 插件必须装
Go(由 golang.org/x/tools 提供),不是Goland或其他伪 Go 插件
最易被忽略的是:新开终端后没重载 shell 配置,或 VS Code 没重启就改了 go env,导致调试器仍用旧环境运行。环境变量一旦设错,它不会报错,只会静默失败。
golang免费学习笔记(深入):立即使用
在学习笔记中,你将探索golang的核心概念和高级技巧!










