脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Golang - go mod文件内容版本号简单用法详解

go mod文件内容版本号简单用法详解

2022-11-29 11:19蓝色记忆 Golang

这篇文章主要为大家介绍了go mod文件内容版本号简单用法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

go版本

本文go版本是1.14,开启 GO111MODULE="on"

经常在go.mod里面看到引入第三方库的版本号:

module test
go 1.14
require github.com/jinzhu/copier v0.3.5 // indirect

可以看到copier版本使用的是v0.3.5的版本。

现在做个实验,在go.mod里面写上上面的代码【是手动写入,没有下载】

我们假定main.go内容如下:

package main
import "fmt"
func main() {
	fmt.Println("test")
} 

里面没有使用到copier的库,我们先run一下

go mod文件内容版本号简单用法详解

可以看到代码正常运行,但是它并没有下载这个依赖包。

现在改一下main.go的代码,如下:

package main
import (
	"fmt"
	"github.com/jinzhu/copier"
)
type User struct {
	Name string
	Age  int
	QQ   string
}
type Employee struct {
	Name string
	Age  int
	Role string
}
func main() {
	user := User{Name: "dj999", Age: 18, QQ: "8888"}
	employee := Employee{Role: "xxx"}
	copier.Copy(&employee, &user)
	fmt.Printf("%#v
", employee)
} 

直接运行go run main.go

go mod文件内容版本号简单用法详解

可以看到它自动下载这个库的指定版本了(go: downloading github.com/jinzhu/copier v0.3.5),并且代码运行成功。

这个时候在pkgmodgithub.comjinzhu下也有这个扩展库的文件夹了

go mod文件内容版本号简单用法详解

我们换一个场景:把go.mod内容改一下:

module yif
go 1.14
require github.com/jinzhu/copier v0.3.4 // indirect 

就是把版本号改为v0.3.4,其他不变,run一下

go mod文件内容版本号简单用法详解

发现它下载了v0.3.4的版本了,再来看看pkgmodgithub.comjinzhu目录:

go mod文件内容版本号简单用法详解

发现两个都存在了。

所以go.mod的一个功能就是指定特定版本,让项目组每个开发者使用同一个版本号进行开发

以上就是go mod文件内容版本号简单用法详解的详细内容,更多关于go mod文件内容版本号用法的资料请关注服务器之家其它相关文章!

原文地址:https://juejin.cn/post/7156153679031042062

延伸 · 阅读

精彩推荐
  • GolangGo http client 连接池不复用的问题

    Go http client 连接池不复用的问题

    这篇文章主要介绍了Go http client 连接池不复用的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们...

    qcrao6642021-03-26
  • Golang2022年程序员需要了解的十大Golang框架

    2022年程序员需要了解的十大Golang框架

    在构建适合各种需求软件方案的过程中,Golang作为一种编译型语言和开源平台,可以协助开发人员构建出稳定可靠的软件应用。本文将向您介绍十种最流行...

    51CTO7652022-01-05
  • Golang利用Go Plugin实现插件化编程的简单方法

    利用Go Plugin实现插件化编程的简单方法

    Golang官方提供了plugin模块,该模块可以支持插件开,下面这篇文章主要给大家介绍了关于如何利用Go Plugin实现插件化编程的相关资料,需要的朋友可以参考下...

    JWang12032021-11-26
  • GolangGolang实现gRPC的Proxy的原理解析

    Golang实现gRPC的Proxy的原理解析

    gRPC是Google开始的一个RPC服务框架, 是英文全名为Google Remote Procedure Call的简称,广泛的应用在有RPC场景的业务系统中,这篇文章主要介绍了Golang实现gRPC的...

    Mr.YF11252021-11-17
  • Golanggin解析json格式的数据出错的处理方案

    gin解析json格式的数据出错的处理方案

    这篇文章主要介绍了gin解析json格式的数据出错的处理方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    katy的小乖8032021-04-18
  • GolangGoLang桥接模式的实现示例

    GoLang桥接模式的实现示例

    桥接模式是一种结构型设计模式,通过桥接模式可以将抽象部分和它的实现部分分离,本文主要介绍了GoLang桥接模式,文中通过示例代码介绍的非常详细,...

    robin·张6542022-08-29
  • GolangGolang极简入门教程(一):基本概念

    Golang极简入门教程(一):基本概念

    这篇文章主要介绍了Golang极简入门教程(一):基本概念,本文讲解了Golang的基本知识、基础语法、相关术语等,需要的朋友可以参考下 ...

    junjie6412019-11-17
  • Golanggolang 实现tcp server端和client端,并计算RTT时间操作

    golang 实现tcp server端和client端,并计算RTT时间操作

    这篇文章主要介绍了golang 实现tcp server端和client端,并计算RTT时间操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...

    YMY_mine3862021-03-03