golang开发环境搭建

要开始 Go(Golang)开发,首先需要搭建一个完整的开发环境。下面是 Windows / macOS / Linux 三平台通用的 Go 开发环境搭建指南(详细步骤) ,包括安装、配置、编辑器推荐、模块管理等内容。


🧱 一、安装 Go

✅ 官方下载地址:

All releases - The Go Programming Language (国内可以使用 清华镜像站)


🪟 Windows 安装步骤:

  1. 下载 .msi 安装包并运行。

  2. 安装时默认路径为: C:\Program Files\Go(对应 GOROOT)

  3. 安装完成后,检查环境变量是否添加:

    • GOROOT:C:\Program Files\Go
    • GOPATH(可自定义):如 D:\GoProjects
    • 把 %GOROOT%\bin 和 %GOPATH%\bin 添加到系统 PATH
  4. 打开终端(cmd 或 PowerShell)测试:

    go 复制代码
    go version
    go env

🍎 macOS 安装步骤:

方法一:使用 官网 .pkg 安装包

方法二(推荐):使用 Homebrew 安装

go 复制代码
brew install go

设置环境变量(可写入 ~/.zshrc 或 ~/.bash_profile):

bash 复制代码
export GOROOT=/usr/local/opt/go/libexec
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

刷新配置:

bash 复制代码
source ~/.zshrc  # 或 ~/.bash_profile

🐧 Linux 安装步骤:

  1. 下载 .tar.gz 压缩包

  2. 解压到 /usr/local 目录:

    bash 复制代码
    sudo tar -C /usr/local -xzf go1.xx.x.linux-amd64.tar.gz
  3. 配置环境变量(加入 ~/.bashrc 或 ~/.zshrc):

    bash 复制代码
    export GOROOT=/usr/local/go
    export GOPATH=$HOME/go
    export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
  4. 刷新配置并检查:

    bash 复制代码
    source ~/.bashrc
    go version
    go env

📁 二、理解 GOROOT、GOPATH、Go Modules

名称 说明
GOROOT Go 安装目录,包含标准库和编译器(一般不修改)
GOPATH 你的代码工作目录(可自定义)
Go Modules Go 1.11+ 推荐使用的依赖管理方式

建议从 Go 1.13+ 开始启用模块管理,设置:

ini 复制代码
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct   # 国内建议设置代理

🧑‍💻 三、推荐编辑器与插件

🌟 推荐 IDE/编辑器

编辑器 插件名 特点
VS Code Go(by Google) 免费、轻便、生态强
GoLand 内置支持 JetBrains 出品,专业强大但付费

VS Code 配置示例

  1. 安装插件:Go(作者为 Google)

  2. 自动提示和调试功能配置:

    json 复制代码
    {
      "go.useLanguageServer": true,
      "go.formatTool": "gofmt",
      "go.lintTool": "golint",
      "go.gopath": "/你的/gopath/目录"
    }
  3. 打开项目后执行:

    css 复制代码
    Ctrl + Shift + P → Go: Install/Update Tools → 全选安装

📦 四、项目结构与模块初始化

初始化 Go 模块

在你的项目目录下执行:

bash 复制代码
mkdir myproject
cd myproject
go mod init github.com/yourname/myproject

这将生成 go.mod 文件,管理依赖包。


🔍 五、验证是否成功安装

创建一个简单的 hello.go:

go 复制代码
package main
​
import "fmt"
​
func main() {
    fmt.Println("Hello, Go!")
}

在终端运行:

go 复制代码
go run hello.go

看到输出即表示环境配置成功。


⚙️ 六、常用 Go 命令

命令 作用
go run 运行 Go 文件
go build 编译生成可执行文件
go install 编译并安装到 $GOPATH/bin
go get 安装/拉取依赖包
go mod tidy 清理 go.mod 和 go.sum
go fmt 格式化代码
go test 单元测试运行

如果你需要我根据你的操作系统帮你生成一个配置脚本(bash/zsh/cmd/powershell),也可以告诉我,我可以自动帮你配置好所有变量和路径。你现在准备在哪个系统上搭建呢?需要我帮你一步步配置吗?

Golang全栈开发完整课程

​

相关推荐
小满zs1 天前
Go语言第十八章(架构设计)
后端·go
FungLeo2 天前
成为全栈·Go 后端篇·三轮代码审阅之后:把可读性和证据做成工程规则
golang·go·ast·静态检查·成为全栈·代码审阅
我不会起名字3222 天前
Redis 从 0 到 1(二十八):Redis 抖一下,重试把它打挂了——超时/重试/熔断的 Go 封装
redis·go·超时·熔断·重试
xyzzklk2 天前
变相解决华为Mate 8锁屏后无法建立入站网络连接
linux·运维·服务器·网络·华为·go·安卓
vipxieliang3 天前
语言对比卡:PHP vs Go vs Java 的优缺点、适用场景与「为什么选 PHP」
java·go·php
我不会起名字3224 天前
Redis 从 0 到 1(二十七):JSON 体积是 Protobuf 的 3.7 倍?3 种序列化的 Go 基准测试
redis·go·序列化·protobuf·messagepack
我不会起名字3224 天前
Redis 从 0 到 1(二十三):一个热 key 打到 10 万 QPS——hotkey 与本地缓存的 Go 实现
redis·缓存·go·qps·hotkey
Patrick_Wilson5 天前
Go 为什么需要 defer?从函数怎么收尾说起
后端·go·编程语言
Patrick_Wilson5 天前
从文本输出理解 Go 方法与接口
后端·go·编程语言
Patrick_Wilson5 天前
读懂一个 Go JSON 处理函数:从输入数据追踪结构体、校验与错误返回
go·json·编程语言