Windows10配置Go开发环境

下载 Golang

Golang 官网: https://go.dev/dl/

本文Go安装路径为D:\Applications\Go

相关文件路径说明

  • D:\Applications\Go:Go安装路径

  • D:\GolandProjects:存放项目

  • D:\gopath:存放go mod下载的第三方依赖包,windows上默认路径%USERPROFILE%\gomac&linux 上默认路径$HOME/go

  • D:\Applications\Go\go-build:go build产生的缓存,这可以加快编译速度

在命令行依次输入以下命令:

1
2
3
4
5
6
7
8
# 始终开启go modules
go env -w GO111MODULE=on
# 设置七牛云镜像
go env -w GOPROXY=https://goproxy.cn,direct
# 设置gopath
go env -w GOPATH=D:\gopath
# 设置gocache
go env -w GOCACHE=D:\Applications\Go\go-build

添加环境变量

1
2
D:\Applications\Go\bin
D:\gopath\bin

下载 GoLand

JetBrains GoLand: https://www.jetbrains.com/zh-cn/go/

GoLand 设置国内镜像

常用镜像地址:

  1. 七牛云:https://goproxy.cn

  2. 阿里云:https://mirrors.aliyun.com/goproxy

GoLand 设置GOPATH

go mod

使用go mod方式构建项目优点

  1. 自动下载依赖包
  2. 项目不必放在 GOPATH/src 内了
  3. 项目内会生成一个 go.mod 文件,列出包依赖
  4. 所有的第三方包会准确的指定版本号
  5. 对于已经转移的包,可以用 replace 申明替换,不需要改代码

关键词解释

go.mod 可以写以下几个关键字:

  • module:定义模组路径
  • go:定义 go 语言 version
  • require:指定依赖的套件,预设是最新版,可以指定版本号
  • exclude:排除该套件和其版本
  • replace:使用不同的套件版本并替换原有的套件版本

常用命令

  • go mod download:下载模块到本地缓存,缓存路径是 $GOPATH/pkg/mod/cache
  • go mod edit:是提供了命令版编辑 go.mod 的功能,例如 go mod edit -fmt go.mod 会格式化 go.mod
  • go mod graph:把模块之间的依赖图显示出来
  • go mod init:初始化模块(例如把原本 dep 管理的依赖关系转换过来)
  • go mod tidy:增加缺失的包,移除没用的包
  • go mod vendor:把依赖拷贝到 vendor/ 目录下
  • go mod verify:确认依赖关系
  • go mod why:解释为什么需要包和模块