乐于分享
好东西不私藏

Go 1.24 安装排雷指南:拒绝被“环境变量”折磨

Go 1.24 安装排雷指南:拒绝被“环境变量”折磨

大家好,我是极客老墨!

在正式开始这套 《Golang 避坑实战教程》之前,老墨要先跟你聊聊一个很多人容易忽略的问题:环境配置

你可能会想:"不就是装个 Go 嘛,有啥好说的?" 但老墨见过太多同学,拿着 Go 1.11 的版本跑 Go 1.18 的泛型代码,然后在群里问:"为什么我的代码报错?"

所以,磨刀不误砍柴工,咱们先把环境搞对,后面学起来才能一路畅通。

关于本教程

这套 Golang 教程分为三个部分:

  1. 基础教程(本系列):从零开始学习 Go 语言的核心语法和基础特性
  2. 高级教程(规划中):工程实践、性能优化、并发模式等进阶内容
  3. Web 开发(规划中):Gin、GORM 等 Web 框架的实战应用

目前你正在阅读的是基础教程部分,适合 Go 语言初学者或想系统学习 Go 基础的开发者。高级教程和 Web 开发部分老墨会在后续完善后陆续发布,敬请期待!

1. Go 版本选择

1.1 本教程使用的版本

本教程所有代码基于 Go 1.24+ 编写和测试。

由于老墨编写这一套教程时间跨度较大,可能教程中的 Go 版本较旧,但是老墨建议大家都使用最新的 LTS 版本即可,GoLang 官方保证了兼容性,所以理论上最新版本的 Go 都可以跑本教程的代码。

1.2 如何查看你的 Go 版本

go version

如果输出类似这样,就说明安装成功了:

go version go1.24.0 darwin/arm64

1.3 版本兼容性说明

Go 版本
本教程兼容性
说明
1.24+
完全兼容
推荐使用,支持所有最新特性
1.21-1.23
完全兼容
支持泛型、slog 等特性,可以正常使用
1.18-1.20
部分兼容
泛型相关代码可以跑,但 slog 等新特性不可用
1.16-1.17
不兼容
不支持泛型,部分代码无法运行
< 1.16
不兼容
太老了,建议升级

2. 安装 Go

2.1 macOS 安装

方法一:使用 Homebrew(推荐)

brew install go

# 验证

go version

方法二:官方安装包

  1. 访问 https://go.dev/dl/[1]
  2. 下载 macOS 版本的 .pkg 文件
  3. 双击安装

2.2 Linux 安装

# 下载(以 1.24.0 为例,请访问官网获取最新版本)

wget https://go.dev/dl/go1.24.0.linux-amd64.tar.gz

# 解压到 /usr/local

sudo rm -rf /usr/local/go

sudo tar -C /usr/local -xzf go1.24.0.linux-amd64.tar.gz

# 配置环境变量(添加到 ~/.bashrc 或 ~/.zshrc)

exportPATH=$PATH:/usr/local/go/bin

# 重新加载配置

source ~/.bashrc  # 或 source ~/.zshrc

# 验证

go version

2.3 Windows 安装

  1. 访问 https://go.dev/dl/[2]
  2. 下载 Windows 版本的 .msi 文件
  3. 双击安装(会自动配置环境变量)
  4. 打开 CMD 或 PowerShell,运行 go version 验证

3. 配置 Go 环境变量

3.1 必须了解的环境变量

# 查看所有 Go 环境变量

go env

重点关注这几个:

变量
说明
默认值
GOROOT
Go 安装目录
自动设置
GOPATH
Go 工作空间
~/go
GOMODCACHE
模块缓存目录
$GOPATH/pkg/mod
GOPROXY
模块代理
https://proxy.golang.org
GOPRIVATE
私有模块前缀

3.2 配置国内代理(重要!)

如果你在国内,强烈建议配置代理,否则下载依赖会很慢甚至失败。

# 使用七牛云代理(推荐)

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

# 或者使用阿里云代理

go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct

验证配置:

go env GOPROXY

3.3 配置私有仓库(可选)

如果你的公司有私有 Git 仓库:

# 设置私有模块前缀(跳过代理)

go env -w GOPRIVATE=github.com/yourcompany/*,gitlab.yourcompany.com/*

4. 选择你的 IDE

4.1 VSCode(推荐新手)

优点:免费、轻量、插件丰富

安装步骤

  1. 安装 VSCode[3]
  2. 安装 Go 插件:在扩展市场搜索 "Go",安装官方插件
  3. 打开任意 .go 文件,VSCode 会提示安装 Go 工具链,点击 "Install All"

推荐配置(settings.json):

{

"go.useLanguageServer":true,

"go.lintTool":"golangci-lint",

"go.formatTool":"goimports",

"editor.formatOnSave":true

}

4.2 GoLand(推荐专业开发者)

优点:功能强大、智能提示一流、调试体验好

缺点:收费(学生和开源项目可免费)

下载地址:https://www.jetbrains.com/go/[4]

4.3 其他选择

  • Vim/Neovim:配合 vim-go 插件,极客最爱
  • Cursor:AI 辅助编程,适合快速开发
  • Zed:新兴编辑器,性能极佳

老墨的建议:新手用 VSCode,老手用 GoLand,极客用 Vim

5. 验证环境

创建一个测试项目,确保一切正常:

# 创建项目目录

mkdir hello-go

cd hello-go

# 初始化模块

go mod init example.com/hello

# 创建 main.go

cat > main.go << 'EOF'

package main

import "fmt"

func main() {

    fmt.Println("Hello, 极客老墨的 Go 教程!")

}

EOF

# 运行

go run main.go

如果看到输出 Hello, 极客老墨的 Go 教程!,恭喜你,环境配置成功!

6. 常见问题

6.1 go: command not found

原因:环境变量没配置好

解决

# macOS/Linux

exportPATH=$PATH:/usr/local/go/bin

echo'export PATH=$PATH:/usr/local/go/bin' >> ~/.zshrc  # 或 ~/.bashrc

# Windows

# 在"系统属性 > 环境变量"中添加 Go 安装目录到 PATH

6.2 下载依赖超时

原因:没配置国内代理

解决:参考 3.2 节配置 GOPROXY

6.3 VSCode 提示 "gopls was not able to find modules"

原因:项目没有初始化 go.mod

解决

go mod init your-module-name

7. 本教程的代码仓库

本教程所有示例代码都托管在 GitHub:

仓库地址:https://github.com/hankmor/go-tutorial-code[5]

每篇文章都会标注对应的代码位置,方便你对照学习。

8. 开始学习前的建议

  1. 不要跳过基础:即使你有其他语言经验,Go 的并发模型、接口设计都很独特
  2. 动手实践:每个示例都要自己敲一遍,不要只看不练
  3. 善用 AI:遇到问题先自己思考,然后可以问 ChatGPT/Claude,但要理解答案
  4. 循序渐进:先把基础教程学扎实,再考虑高级内容和 Web 开发

9. 准备好了吗?

环境配好了,IDE 选好了,代码仓库也 clone 下来了。

现在,让我们正式开始这段 Go 语言基础学习之旅吧!


快速检查清单

  • Go 版本 >= 1.24
  • 配置了 GOPROXY
  • IDE 安装并配置好
  • 能成功运行 go run main.go
  • Clone 了示例代码仓库

全部完成?那就继续下一篇吧!

我是极客老墨,我们正式开始!

本文相关资源

  • Go 官方下载[6]
  • 本教程代码仓库[7]

引用链接

  • [1] https://go.dev/dl/: https://go.dev/dl/
  • [2] https://go.dev/dl/: https://go.dev/dl/
  • [3] VSCode: https://code.visualstudio.com/
  • [4] https://www.jetbrains.com/go/: https://www.jetbrains.com/go/
  • [5] https://github.com/hankmor/go-tutorial-code: https://github.com/hankmor/go-tutorial-code
  • [6] Go 官方下载: https://go.dev/dl/
  • [7] 本教程代码仓库: https://github.com/hankmor/go-tutorial-code