go module 使用说明

创作人 Leo


编辑时间 Wed Apr 29,2020 at 15:43


Why go module

  1. go build 自动检索代码中包引用并添加到 go.mod 文件
  2. go build 自动下载不存在的包
  3. go.sum 锁版本
  4. 所有项目用的包在 go.mod 一目了然
  5. 支持自建私有仓库,方便代码积累

环境变量

设置开启 go module
on 开启,所有项目会启用 go module 模式
off 关闭,所有项目使用 go path 模式
auto 自动,根据项目下面又没偶遇 go.mod go.sum 文件确定是否启用
export GO111MODULE=on (on linux)

设置代理,否则国内使用导入包会有服务器无法连接问题
export GOPROXY=https://goproxy.cn (on linux)

mod 命令

go help mod
go help mod edit

添加一个包依赖
go mod edit -require “包路径@版本号”
比如我们要使用 cli 工具包
1. 执行 go mod edit -require “github.com/urfave/cli@v1.22.4” 将包添加到 mod 文件
2. 执行 go mod download ,自动将本地 module cache 中不存在的指定版本的包下载
3. 在需要的地方 import github.com/urfave/cli,或者直接编写,让 ide 自动导入

删除一个包依赖
go mod edit -droprequire “包路径”

整理 mod 文件
go mod tidy
1. 添加缺少的包声明(代码中import的,但是mod文件中没有)
2. 删除未引用的包声明

参考

工具站 pkg.go.dev
比较全的教程(英文)


阅读:28
搜索
  • Linux 高性能网络编程库 Libevent 简介和示例 1899
  • Mac系统编译PHP7【20190929更新】 1765
  • Windows 安装Swoole 1546
  • Hadoop 高可用集群搭建 (Hadoop HA) 1438
  • Hadoop 高可用YARN 配置 1362
  • 小白鼠问题 1290
  • Hadoop Map Reduce 案例:好友推荐 1241
  • 自动化测试工具 Selenium 1103
  • GIT 分支管理 1022
  • Golang 使用 Grpc 968
简介
不定期分享软件开发经验,生活经验