Go 的 go.mod文件

发布时间 2023-12-07 17:23:22作者: 秋了个蝉

首先每个项目都有个家就是根目录,项目所有的包啊文件都在根目录下面,goland使用go.mod方式构建项目时,帮我们创建了一个go.mod配置文件。

为什么要有个配置文件,因为我们开发的时候需要调用一些外部包,就比如Go提供的log日志包,

这个包写的比较简单,不足以满足我日常开发需要的功能,所以我需要引用别人写好的,满足我日常开发需要的log包。

 

配置文件就是把你需要的那个包的模块路径放进配置文件里面,你用的时候go.mod就通过你提供的模块路径,去下载你指定的包到配置文件里面供你使用。

模块路径是一个唯一标识符,用于指定包在公共代码仓库中的位置。

 

也许你调用张三的log包,log包里面又调用了李四的某个包,后面连在一大串别人的包都有可能,

而我项目下的go.mod只用拿到张三的log包的模块路径就行,至于张三又调用了李四的包,是张三项目下的go.mod配置文件去下载的问题。

 

别人写好的包默认都是放在github.com网站上面,世界公认的代码仓库,世界上的程序员都分享在上面,这个网站被微软公司收购了,服务器在美国那边。

国家为了某种原因限制我们国家的人访问别的国家的网站做了限制,所以我们无法直接访问到github.com,需要FQ过去才能访问。

我们普通程序员也没有那个FQ的能力,并且国家都限制了你还执意FQ,有可能被法律制裁,有一定的风险。

 

go.mod代理是为了解决Go语言项目在下载别人包的时候可能被墙的问题,就去找一些外代理如goproxy.cn,goproxy.io等,

他们有本事FQ,也许是他们有国家的对外网站的访问权限还是什么的。

一般情况下,使用Go语言的go.mod代理不需要付费,但是想要提高下载速度啊,提高稳定性啊,可能会提供商业版或专业版的付费服务给你使用。