Go语言mod使用
1.go版本限制
- go版本必须>=1.11
2.配置go mod和go proxy
- windows
go env -w GOBIN="go语言安装的位置下的bin目录"
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct

- linux
export GO111MODULE=on
export GOPROXY=https://goproxy.cn
3.goland设置
- 配置
Go Modules(vgo)
![]()
GOPATH不需要配置
![]()
4.go mod命令
- 比较常用的是 init,tidy, edit

go mod init创建一个新模块, 并初始化描述它的 go.mod 文件。go build、go test和其他包构建命令根据 go.mod 文件需要添加新的依赖项。go list -m all打印当前模块的所有依赖项列表。go get更新依赖项所需的版本(或添加新的依赖项)和python中的pip install类似。go mod tidy扫描项目中的依赖,缺少的自动下载,多余的自动清除。
5.使用go mod管理一个新项目
- 1.创建一个目录,作为项目开发路径(使用
mod管理项目后,pkg目录和bin目录会在GOPATH路径下)
// GOPATH目录:F:\self_project\golearn
// 创建src目录保存项目源码(可以随意)
F:\self_project\golearn\src
// 创建二级目录dcpuffer(可以随意)
F:\self_project\golearn\src\dcpuffer
- 2.使用
go mod init初始化项目
// cd F:\self_project\golearn\src
go mod init dcpuffer
初始化完成后,当前目录会出现一个
go.mod文件
- 3.在当前路径下创建一个
main.go文件
package main
import (
"fmt"
"rsc.io/quote"
)
func Hello() string {
return quote.Hello()
}
func main() {
fmt.Println(Hello())
}
- 4.使用
go get拉取项目依赖rsc.io/quote
在拉取项目依赖时,你会发现拉取的过程总共分为了三大步,分别是
finding(发现)、downloading(下载)以及 extracting(提取)
在拉取信息上一共分为了三段内容:


选择具体版本拉取
执行 go run main.go 运行代码会发现 go mod 会自动查找依赖自动下载
go 会自动生成一个 go.sum 文件来记录 dependency tree





浙公网安备 33010602011771号