环境安装与开发工具
下载与安装
Go 支持 Linux、FreeBSD、Mac OS X(Darwin)、Windows 等系统。
下载地址:
安装包命名规律:go版本号.系统.架构.后缀
| 安装包文件名 | 适用系统 | 处理器架构 | 说明 |
|---|---|---|---|
| go1.26.3.windows-amd64.msi | Windows | x86-64 | 64位系统图形化安装程序 |
| go1.26.3.darwin-arm64.pkg | macOS | ARM64 | 适用于 M 系列芯片 Mac |
| go1.26.3.darwin-amd64.pkg | macOS | x86-64 | 适用于 Intel 处理器 Mac |
| go1.26.3.linux-amd64.tar.gz | Linux | x86-64 | 绝大多数 64 位 Linux 系统 |
| go1.26.3.src.tar.gz | 任意系统 | 源码 | Go 语言源代码包,需自行编译 |
Linux 安装
把压缩包解压到 /usr/local 目录:
tar -C /usr/local -xzf go1.26.3.linux-amd64.tar.gz
把 bin 目录加入 PATH(临时生效,只对当前终端有效):
export PATH=$PATH:/usr/local/go/bin
永久生效:编辑 ~/.bash_profile 或 /etc/profile,在末尾追加:
export PATH=$PATH:/usr/local/go/bin
然后执行:
source ~/.bash_profile
Mac 系统可以直接双击 .pkg 安装包完成安装,安装目录在 /usr/local/go/ 下。也可以 brew install go
Windows 安装
- 下载 .msi 安装包,默认安装到 c:\Go 目录
- 把 c:\Go\bin 加入系统 Path 环境变量
- 添加后需要重启命令窗口才能生效
Linux 发行版也可以通过包管理器安装:ubuntu 用 apt install golang-go,Red Hat 系列用 sudo yum install golang
验证安装
查看当前系统安装的 Go 版本:
go version
安装测试
创建 test.go:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
执行:
go run test.go
输出:
Hello, World!
GOPATH 与 GOROOT
三个关键环境变量:
| 变量 | 含义 | 说明 |
|---|---|---|
| GOROOT | go 的安装路径 | 存放编译器、标准库等,如 /usr/local/go |
| GOPATH | go 的工作目录 | 存放项目源码、依赖包等 |
| PATH | 可执行文件路径 | 需要包含 go 安装目录下的 bin |
Linux 下配置(写入 ~/.bashrc 或 ~/profile 后 source 生效):
export GOROOT="/usr/local/go" export GOPATH="/go" export PATH=$PATH:/usr/local/go/bin
查看 go 环境配置:
go env
GOPATH 模式是老旧的依赖管理模式,现在默认使用 Go Modules,GOPATH 主要保存全局依赖缓存。
开发工具选择
| 工具 | 类型 | 特点 |
|---|---|---|
| VS Code | 编辑器 | 免费开源,配合官方 Go 插件使用,轻量 |
| GoLand | IDE | JetBrains 家族的 Go 专属 IDE,功能最全,有 30 天免费试用期 |
| LiteIDE | IDE | 开源、跨平台的轻量级 Go IDE |
| Eclipse | IDE | 需要安装 goclipse 插件和 gocode 等配套工具,配置较繁琐 |
VS Code 安装 Go 插件
打开 VS Code 扩展市场,搜索 Go,安装官方插件:
- 插件名称:Go Extension for VS Code(golang.Go)
- 安装后即可使用代码提示、测试、调试等功能
智能提示(IntelliSense)
智能提示由 gopls 语言服务提供,通过 gopls 配置项自定义规则。
配置语义高亮:
"gopls": { "ui.semanticTokens": true }
功能列表:
- 代码自动补全:输入包名+. 即可唤起包内方法/常量提示
- 悬浮文档提示:鼠标悬浮在变量、函数、结构体上显示文档
- 函数参数提示:输入左括号 ( 时自动弹出形参签名
快捷键:
- Ctrl+空格 手动唤起补全弹窗
- Shift+Cmd+空格 手动触发参数提示
代码导航
| 快捷键 | 功能 |
|---|---|
| F12 | 跳转定义 |
| Alt+F12 | 预览定义(弹窗预览源码,不切换文件) |
| Shift+F12 | 查找引用 |
| Shift+Alt+H | 调用层级 |
| Cmd+F12 | 查看实现 |
命令面板符号检索:
- Shift+Cmd+O 当前文件内检索符号
- Cmd+T 全工作区全局检索符号
代码格式化
- 快捷键 Shift+Alt+F 一键格式化当前文件
配置 gofumpt 严格格式化风格(比原生 gofmt 规范更严苛):
"gopls": { "formatting.gofumpt": true }
格式化底层依赖 gopls 实现。
单元测试
VS Code 侧边栏测试面板 + 代码上方 CodeLens 快捷按钮,支持函数/文件/包/整个项目的单元测试。
常用测试指令(命令面板输入 Go: test):
- Go: Test Function At Cursor 运行光标所在函数测试
- Go: Test File 运行当前文件全部测试用例
- Go: Test Package 运行当前代码包全部测试
- Go: Test All Packages in Workspace 全项目批量测试
调试 Debug
Go 插件依托 Delve 调试器(dlv)实现调试,支持:
- 本地调试 + 远程服务调试
- 在调试控制台执行 dlv 原生指令
- 右键代码打开汇编视图(Disassembly View)