美文网首页
go中使用mod

go中使用mod

作者: 岑吾 | 来源:发表于2021-01-12 01:38 被阅读0次

go从1.11版本后就开始支持Modules了,但在1.13版本后加入了GOPROXY后才把go mod在国内带上了巅峰。

GO111MODULE 开关

GO111MODULE 有三个值:off, on和auto(默认值)。

  • GO111MODULE=off,go命令行将不会支持module功能,寻找依赖包的方式将会沿用旧版本那种通过vendor目录或者GOPATH模式来查找。
  • GO111MODULE=on,go命令行会使用modules,而一点也不会去GOPATH目录下查找。
  • GO111MODULE=auto,默认值,go命令行将会根据当前目录来决定是否启用module功能。这种情况下可以分为两种情形:
  1. 当前目录在GOPATH/src之外且该目录包含go.mod文件
  2. 当前文件在包含go.mod文件的目录下面。

go mod 命令

命令 说明
down loaddownload modules to local cache(下载依赖包)
edit edit go.mod from tools or scripts(编辑go.mod)
graph print module requirement graph (打印模块依赖图)
init initialize new module in current directory(在当前目录初始化mod)
tidy add missing and remove unused modules(拉取缺少的模块,移除不用的模块)
vendor make vendored copy of dependencies(将依赖复制到vendor下)
verify verify dependencies have expected content (验证依赖是否正确)
why explain why packages or modules are needed(解释为什么需要依赖)

设置代理

在终端输入下面语句就可以了

$ go env -w GO111MODULE=on
$ go env -w GOPROXY=https://goproxy.io

也可以把GOPROXY配置成环境变量。
除了goproxy.io之外,还有几个比较快的:

项目中使用

进入项目目录中,使用go mod init就可以创建一个新的go.mod了

执行 go rungo build时,如果项目中有go.mod或GO111MODULE=on,则会自动查找依赖自动下载。

使用go mod tidy来拉取缺少的模块,移除不用的模块

go get 升级

  • 运行 go get -u 将会升级到最新的次要版本或者修订版本(x.y.z, z是修订版本号, y是次要版本号)
  • 运行 go get -u=patch 将会升级到最新的修订版本
  • 运行 go get package@version 将会升级到指定的版本号version
  • 运行go get如果有版本的更改,那么go.mod文件也会更改

本文参考:https://juejin.cn/post/6844903798658301960

相关文章

  • 50.Go Mod 来创建 Gin 项目

    开启 Go mod 初始化 Go mod 使用Go mod 进行包管理,可以在$GOPATH/src 之外创建项目...

  • 你离告别GOPATH只差一步

    使用go mod 管理包代替gopath管理 我使用的编辑器是 goland,下面开始goland的go mod设...

  • beego 使用mod 的坑

    go mod 模式下添加依赖失败 在 go.mod文件中添加

  • go 操作 mongodb

    MongoDB Go驱动程序 MongoDB Go Driver使用帮助文档 安装使用: 安装直接 go mod ...

  • golang学习笔记

    go module基本使用 mkdir beemodcd beemodgo mod init beemod go语...

  • golang项目 从goverder 转到 go mod

    goverder 不再使用 该怎么办!! 转成mod cd 到你到项目下go mod init 项目名go mo...

  • go mod 使用

    简介 go 1.11以后提供了新的管理依赖的方式, 使得管理依赖,尤其是依赖版本更加的明确且易于管理, 这种方式就...

  • go mod使用

    最近由于换工作,开始交接工作。整理以前的工作内容,由于组内就我一个在做go和大数据。 所以开发没有规划,当时是怎么...

  • go mod 使用

    启动终端执行以下命令 1、set GO111MODULE=on 2、setGOPROXY=https://gopr...

  • go mod使用

    1、为什么要使用go mod 目前,golang的包管理工具有很多,用的比较多的包括:govendor、godep...

网友评论

      本文标题:go中使用mod

      本文链接:https://www.haomeiwen.com/subject/yrtsaktx.html