直接安装官方包并配置path即可运行go run,无需优先配置gopath、ide插件等;go 1.16起模块模式默认启用,新建项目执行go mod init即自动生成go.mod文件。

直接装官方安装包,配好 PATH 就能跑 go run,其他全是可选项。别一上来就折腾 GOPATH、IDE 插件、代理、Docker,90% 的新手卡在环境配置上,不是因为难,而是因为信息过载。
Windows/macOS/Linux 用安装包一步到位
去 https://www.php.cn/link/81836b7cd16991abb7febfd7832927fd 下对应系统的 .msi(Windows)、.pkg(macOS)或 .tar.gz(Linux),双击运行即可。安装程序会自动把 go 命令加进系统 PATH,不用手动改环境变量。
- Windows 用户:安装完打开 PowerShell 或 CMD,直接输
go version,有输出就成功了 - macOS 用户:如果用的是 Apple Silicon(M1/M2/M3),选
arm64版本;Intel 芯片选amd64 - Linux 用户:解压后把
/usr/local/go/bin加进PATH即可,别动GOPATH——Go 1.11 之后默认启用 module,它基本没用了
go mod 是默认行为,不是可选项
从 Go 1.16 开始,GO111MODULE=on 已是默认值。新建项目时,只要执行一次 go mod init example.com/hello,就会生成 go.mod 文件,后续 go run、go build 全部走 module 模式。
- 别手动设
GO111MODULE=on,除非你用的是极老版本( - 不需要提前建
$HOME/go目录,也不用设GOPATH,module 模式下代码可以放在任意路径 -
go get现在只用于拉依赖,不是“安装命令”——它不会把二进制放到$GOPATH/bin,要用go install
写第一个程序,三行代码验证环境
新建一个 hello.go,内容如下:
使用 uber-go/dig 在 Golang 中实现依赖注入——基于反射容器,提供 Provide/Invoke、dig.In/dig.Out 参数与结果对象,支持命名依赖等
package main
import "fmt"
func main() {
fmt.Println("Hello, Go!")
}
然后在终端里执行:
-
go run hello.go—— 直接运行,不生成文件 -
go build hello.go—— 生成hello(macOS/Linux)或hello.exe(Windows) -
./hello或hello.exe—— 运行编译后的二进制
只要这三步都通,说明环境完全可用。别急着装 VS Code 插件、LiteIDE 或 GoLand——先用纯终端写够 5 个 main 函数,再考虑编辑器。
代理和模块下载失败?先关掉它
国内用户常遇到 go mod download 卡住或报错 Get "https://proxy.golang.org/...": dial tcp: i/o timeout,这不是环境问题,是网络策略干扰。
- 临时关闭代理:运行
go env -w GOPROXY=direct,让模块直连源站(慢但能通) - 如果必须用代理,只设一次:
go env -w GOPROXY=https://goproxy.cn,direct,别往 shell 配置里硬写export - 别碰
CGO_ENABLED、GOOS这类交叉编译参数——初学阶段根本用不到
真正容易被忽略的点是:Go 环境本身极轻量,但人容易被“最佳实践”带偏。先跑通 go run,再谈 module、test、build、deploy。顺序错了,入门成本就翻倍。
golang免费学习笔记(深入):立即使用
在学习笔记中,你将探索golang的核心概念和高级技巧!










