go 1.16+安装后无需配置goroot、gopath,只需重启终端并执行go env -w go111module=on、goproxy=https://goproxy.cn,direct、gosumdb=sum.golang.org,再go mod init初始化模块即可直接写代码。

直接装完就能写代码,不用改路径、不碰 GOPATH、不配 GOROOT,Go 1.16+ 默认支持任意目录初始化模块,go mod init 一跑就通。
安装 Go 二进制包(Windows/macOS/Linux 通用)
新版 Go 安装包已默认完成 PATH 注入,无需手动加环境变量:
- Windows:下载
goX.X.X.windows-amd64.msi,双击安装,保持默认路径(如C:\Program Files\Go) - macOS:用 Homebrew 运行
brew install go,或下载.pkg双击安装 - Linux:解压
goX.X.X.linux-amd64.tar.gz到/usr/local,再执行echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc && source ~/.bashrc
装完必须重启终端(CMD/PowerShell/Terminal),否则 go 命令不可用。验证命令:go version —— 输出类似 go version go1.25.0 linux/amd64 即成功。
必须配置的三项环境变量(国内用户绕不开)
不设代理,go get 或 go mod tidy 会卡死或报错 timeout / connection refused:
-
go env -w GO111MODULE=on:强制启用模块管理,避免旧式 GOPATH 依赖查找逻辑 -
go env -w GOPROXY=https://goproxy.cn,direct:七牛云代理,国内访问稳定;direct表示找不到时回源官方 -
go env -w GOSUMDB=sum.golang.org:校验包完整性,国内可临时设为off(仅调试用),但上线项目务必保留
验证是否生效:go env | grep -i proxy(macOS/Linux)或 go env | findstr GOPROXY(Windows)。
Go 配置库,使用 spf13/viper — 分层优先级(flag > env >file > KV > default),提供 BindPFlag/BindPFlags、SetEnvPrefix + SetEnvKeyReplace 等功能。
VS Code + Go 扩展一键补全开发链
不是所有插件都值得装,只留核心四件套,避免工具冲突导致 gopls 启动失败:
- 装官方
Go扩展(publisher:golang.go),别选名字相似的第三方“Go Tools” - 首次打开
.go文件时,VS Code 会弹窗提示安装工具,点Install All—— 它会自动装好gopls、dlv、goimports - 若提示
gopls failed to start,检查是否同时装了多个 LSP 插件,卸载其他 Go 相关扩展 - 确认设置里启用了
"go.useLanguageServer": true(默认已开)
此时保存 main.go 就能自动格式化、跳转定义、悬停看文档,不需要额外配 settings.json。
新建项目并运行(不进 GOPATH,不建 src 目录)
老教程教你在 %GOPATH%/src 下建项目,现在完全过时了:
- 新建空文件夹,比如
myapi,终端进入该目录 - 执行
go mod init myapi(模块名建议用小写字母+短横线,不要含空格或大写) - 创建
main.go,内容只要三行:package main、import "fmt"、func main() { fmt.Println("ok") } - 运行
go run main.go,看到输出即表示整个链路打通
真正容易被忽略的是:模块名(go mod init 后面那个参数)会影响后续 import 路径。如果你将来要发布到 GitHub,建议直接写成 go mod init github.com/yourname/myapi,否则本地引用和远程导入会不一致。
golang免费学习笔记(深入):立即使用
在学习笔记中,你将探索golang的核心概念和高级技巧!










