Go module 进行包管理

go module是Go1.11版本之后官方推出的版本管理工具,并且从Go1.13版本开始,go module将是Go语言默认的依赖管理工具。

使用go module进行包管理,就不用非得在GOPATH下面开发(之前是需要在gopath/src/),可以在任意位置进行Go 开发,提高了灵活性。

以下,写写自己对go module的理解。

假设写了一个包 package1,这时候在另外的包package2中要调用这个包的函数。
那么可以在package1 目录下,使用go mod init package1,会在目录下生成go.mod文件,这时候,go.mod文件表明package1包对外显示的包名就是package1.

module package1
go 1.14

这时候在package2中,也使用go mod init package2,同样生成一个go.mod文件,如果package2要用到package1,则可以在这个文件中增加。

module package2
go 1.14
require “package1” v0.0.0
replace “package1” => “…/mypackage1”

反正,就是使用go mod init 设置当前包对外显示的包名字,然后调用者在自己包下的go.mod文件声明需要导入的包名字以及对应的包的目录即可。

require “package1” v0.0.0 : 表示本包需要用到这个包的一些接口
replace “package1” => “…/mypackage1” : 指明这个包在本地存放的路径,这样Go才知道去哪个目录找,如果不指定,go会去默认的环境变量的路径下寻找,没有则报错了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值