1、Go环境安装与模块初始化

1、Go 环境安装与模块初始化


安装 Go 1.21+

Go 1.21 及以上版本对 Go Modules 的支持更完善,语言服务器 gopls 也要求 Go 1.21+ 才能发挥全部功能。

先检查是否已安装:

go version

Windows 安装

下载安装包:访问 Go 下载页面(https://go-lang.org.cn/doc/install),选择 Windows 版本的 .msi 安装包(例如 go1.21.x.windows-amd64.msi)。

安装步骤:双击 .msi 文件,按向导提示操作。

验证:打开命令提示符(CMD)或 PowerShell,输入:

go version
# 预期输出:go version go1.21.5 windows/amd64

检查环境变量(安装程序通常会自动配置,但建议检查):

echo %GOROOT%
# 应显示:D:\Program Files\GoLang
echo %GOPATH%
# 应显示:D:\ProgramCode\GoLang

如果未自动配置,可手动添加:右键“此电脑”→属性→高级系统设置→环境变量,在系统变量中添加 GOROOT(值为 D:\Program Files\GoLang)和 GOPATH(值为 D:\ProgramCode\GoLang),并在 PATH 中添加 %GOROOT%\bin

macOS 安装

方式一:Homebrew 安装(推荐)

# 如果没有 Homebrew,先安装:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 安装 Go
brew install go

方式二:官方安装包:访问官网(go.dev/dl),下载 .pkg 安装包,双击按提示安装即可。

验证

go version
# 预期输出:go version go1.21.x darwin/arm64(Apple Silicon)或 darwin/amd64(Intel)

Linux 安装

以 Ubuntu/Debian 为例

方式一:使用包管理器

sudo apt update
sudo apt install golang-go

方式二:从官方下载(推荐,能获取最新版本)

# 下载 Go 1.21+ 二进制包
wget https://go.dev/dl/go1.21.x.linux-amd64.tar.gz

# 解压到 /usr/local
sudo tar -C /usr/local -xzf go1.21.x.linux-amd64.tar.gz

# 配置环境变量(添加到 ~/.bashrc 或 ~/.profile)
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$GOPATH/bin:$GOROOT/bin:$PATH

# 使配置生效
source ~/.bashrc

验证

go version

安装 VS Code + Go 插件

安装 VS Code

访问 code.visualstudio.com 下载对应系统的安装包,按提示完成安装。

安装 Go 扩展

  1. 打开 VS Code
  2. 点击左侧活动栏的扩展图标(快捷键:Ctrl+Shift+X / Cmd+Shift+X
  3. 在搜索栏输入 Go
  4. 找到由 Go Team at Google 发布的官方 Go 扩展(ID: golang.go),点击 Install 安装

安装 Go 工具集

安装扩展后,打开任意 .go 文件,VS Code 右下角会弹出 “Missing tools” 提示,点击 Install All 即可自动安装以下核心工具:

工具 作用
gopls Go 语言服务器,提供智能代码补全、跳转定义、重构等功能
dlv Delve 调试器,支持断点调试
goimports 自动格式化代码并整理 import 语句

提示:如果国内网络下载工具失败,需要先配置 Go 代理(见下方 2.5 节),再执行命令面板(Ctrl+Shift+P)中的 Go: Install/Update Tools 重新安装。

推荐配置(settings.json)

在 VS Code 中打开设置(Ctrl+,),点击右上角的 “打开设置(JSON)” 图标,在 settings.json 中添加以下配置:

{
    "go.formatTool": "goimports",
    "go.lintTool": "golangci-lint",
    "go.useLanguageServer": true,
    "go.toolsManagement.autoUpdate": true,
    "[go]": {
        "editor.formatOnSave": true,
        "editor.codeActionsOnSave": {
            "source.organizeImports": "explicit"
        }
    }
}

配置说明:

  • go.formatTool: "goimports":保存时自动格式化代码并整理 import
  • go.toolsManagement.autoUpdate: true:自动更新 Go 工具
  • editor.formatOnSave: true:保存时自动格式化

配置国内镜像代理(中国大陆用户必做)

由于网络原因,直接下载 Go 依赖可能失败。配置 GOPROXY 使用国内代理:

go env -w GOPROXY= https://goproxy.cn ,direct
go env -w GO111MODULE=on

验证配置:

go env GOPROXY
# 应输出: https://goproxy.cn ,direct

理解关键环境变量(GOROOT 与 GOPATH)

在 Go 1.11+ 引入 Go Modules 后,开发模式发生了根本变化。理解这两个变量很重要,但不必过分纠结:

变量 含义 默认值 备注
GOROOT Go 安装目录(SDK 位置) 安装时自动设置 一般不需要改动
GOPATH Go 工作区目录 Windows: %USERPROFILE%\go;Unix: $HOME/go 用于存放下载的依赖包(pkg/mod)和工具二进制(bin

现代开发模式:使用 Go Modules(go mod)后,代码不再需要放在 GOPATH/src 下,任何目录都可以作为项目根目录。GOPATH 现在主要用于存储依赖缓存和工具。

创建第一个 Go 项目 + go mod init

创建项目目录并初始化模块

# 创建项目目录并进入
mkdir hello-go && cd hello-go

# 初始化 Go Module
go mod init hello-go

执行后,目录下会生成一个 go.mod 文件,内容如下:

module hello-go

go 1.21

go mod init <module-name> 中的模块名可以自由命名。如果项目将托管到 GitHub,建议使用 github.com/你的用户名/项目名 作为模块名,这是 Go 社区的最佳实践。

编写第一个 Go 程序

创建文件 main.go,输入以下内容:

package main

import "fmt"

func main() {
    fmt.Println("Hello, Go!")
}

运行程序

# 方式一:直接运行
go run main.go

# 方式二:运行当前目录下的主程序
go run .

# 预期输出:Hello, Go!

编译为可执行文件

go build .
# 生成的可执行文件名为 hello-go(Windows 为 hello-go.exe)

# 运行编译后的程序
./hello-go        # Linux / macOS
hello-go.exe      # Windows

验收自检(必须通过)

在完成以上所有步骤后,在终端中执行以下两条命令,确保输出正确:

# 1. 验证 Go 版本
go version
# ✅ 能正常显示版本号,例如:go version go1.21.5 windows/amd64

# 2. 验证 go run
go run main.go
# ✅ 能正常输出:Hello, Go!

常见问题排查

问题 解决方案
go version 显示 command not found Go 未安装或未添加到 PATH。检查 echo $PATH 是否包含 Go 的 bin 目录
VS Code 提示工具安装失败 先执行 go env -w GOPROXY= https://goproxy.cn ,direct,再手动执行 Go: Install/Update Tools
go run main.go 报错 确保文件名为 main.go,且内容中 package mainfunc main() 拼写正确
代码提示/跳转不工作 检查 gopls 是否已安装。打开命令面板(Ctrl+Shift+P),执行 Go: Install/Update Tools,勾选 gopls 重新安装
无法下载依赖包 确保已配置 GOPROXY(go env -w GOPROXY= https://goproxy.cn ,direct

常用工具与命令

Go 自带一套完整的开发工具链,无需安装额外的构建工具。以下是最常用的 go 命令速查:

命令 功能 常用场景
go build 编译源代码 生成可执行文件,用于部署
go run 编译并运行 快速测试代码,开发调试
go test 执行测试 运行 _test.go 文件中的测试函数
go mod init 初始化模块 创建新项目时生成 go.mod 文件
go mod tidy 整理依赖 下载缺失的依赖,移除未使用的依赖
go fmt 格式化代码 统一代码风格(Go 社区强制使用)
go vet 静态分析 检查代码中的可疑构造
go get 安装依赖包 下载并安装指定的包
go doc 查看文档 在终端查看包或函数的文档
go env 查看环境变量 查看 GOPATH、GOROOT 等配置
go clean 清理构建缓存 释放磁盘空间
posted @ 2026-09-23 14:53  爱喝奶茶的CC怪  阅读(8)  评论(0)    收藏  举报