概述
Go 语言这几年越来越火,微服务、云原生、CLI 工具遍地都是 Go 写的。但很多新手卡在环境搭建这一步——装完发现版本不对,模块路径配不明白,GOPATH 和 Go Modules 搞混了。
这篇教程带你从零搭建 Go 开发环境,覆盖 Mac、Linux、Windows 三个平台,最后跑通你的第一个 Go 项目。
准备工作
你需要的是:
- 一台能上网的电脑(Mac / Linux / Windows 都行)
- 管理员权限(Linux 和 Windows 需要)
- 一个终端(Windows 推荐 WSL2 或 Git Bash)
Go 官方目前最新稳定版是 1.22.x,我们这次就装这个版本。
安装步骤
Mac 系统
Mac 用户有两种选择。
第一种,用 Homebrew:
brew install go
装完直接跳到验证步骤。
第二种,手动安装更灵活:
curl -OL https://go.dev/dl/go1.22.4.darwin-arm64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.22.4.darwin-arm64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.zshrc
source ~/.zshrc
注意:Intel Mac 把 darwin-arm64 换成 darwin-amd64。
Linux 系统
curl -OL https://go.dev/dl/go1.22.4.linux-amd64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.22.4.linux-amd64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrc
ARM 架构的机器(比如树莓派或 AWS Graviton)把 linux-amd64 换成 linux-arm64。
Windows 系统
Windows 用户最简单,直接去 go.dev/dl 下载 .msi 安装包,双击跟着下一步走就行。
装完后打开 PowerShell,确认环境变量:
$env:PATH = [System.Environment]::GetEnvironmentVariable("PATH","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("PATH","User")
或者重启一下终端也行。
配置 Go Modules
装好 Go 之后,第一件事是配模块。Go 从 1.11 开始用 Module 管理依赖,不再依赖 GOPATH 了。
# 开启模块支持
go env -w GO111MODULE=on
# 设置国内镜像加速(可选,但推荐)
go env -w GOPROXY=https://goproxy.cn,direct
# 设置你的模块路径,后面创建项目会用到
go env -w GOPATH=$HOME/go
GOPROXY 换成 https://goproxy.cn 是因为国内直连 golang.org 很慢。如果你不需要加速,可以跳过这步。
创建第一个项目
mkdir -p ~/projects/hello-go
cd ~/projects/hello-go
# 初始化模块,替换为你的用户名和仓库地址
go mod init github.com/yourname/hello-go
# 写代码
cat > main.go << 'EOF'
package main
import "fmt"
func main() {
fmt.Println("Hello, Go!")
}
EOF
# 运行
go run main.go
输出 Hello, Go! 就说明一切正常。
验证安装
跑这几条命令检查环境:
go version
# 应该输出 go1.22.4 darwin/arm64 或 linux/amd64
go env GOPATH GOFLAGS GOMODCACHE
# GOPATH 应该是 ~/go
# GOMODCACHE 应该是 ~/go/pkg/mod
再跑一次刚才的项目:
cd ~/projects/hello-go
go build -o hello .
./hello
# 输出 Hello, Go!
如果都正常,恭喜你,Go 开发环境已经搭好了。
常见问题
Q: 装完 go 命令找不到?
检查 PATH 有没有生效。Mac 和 Linux 运行 echo $PATH 看看 /usr/local/go/bin 在里面吗?没有的话重新 source 配置文件或者重启终端。
Q: 下载依赖特别慢?
这就是为什么要配 GOPROXY。执行 go env -w GOPROXY=https://goproxy.cn,direct 就好了。
Q: 想同时用多个 Go 版本怎么办?
推荐用 gvm(Mac/Linux)或 gobrew。它们能让你在不同项目间切换 Go 版本,不用每次都重新安装。
Q: Windows 上提示 “go不是内部或外部命令”?
环境变量没设对。去系统属性 → 高级 → 环境变量,确认 Path 里加了 C:\Program Files\Go\bin。加完重启终端再试。
Q: go mod tidy 报错?
多半是网络问题。确认 GOPROXY 配对了,或者换个代理试试。有时候防火墙也会拦截,换用 HTTP 代理也行。
环境搭好了,接下来就是写代码了。Go 的语法简洁,上手很快,花两天时间就能写出像样的小工具。
你打算用 Go 做什么项目?