Go语言mod使用

1.go版本限制

  • go版本必须>=1.11

2.配置go modgo 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

6.包发布

参考连接:https://www.10qianwan.com/articledetail/883033.html

posted @ 2022-09-20 17:45  fatpuffer  阅读(1554)  评论(0)    收藏  举报