此处只使用go mod方式进行本地的包管理,不使用GOROOT的方式。GO版本1.11后自带,无需另外下载
开启go mod
安装GO后,设置下面环境变量,用以启用go mod:
go env -w GOBIN=/Users/youdi/go/bin //go安装目录的bin文件夹
go env -w GO111MODULE=on
/**镜像加速,下列任选一个*/
go env -w GOPROXY=https://goproxy.cn,direct // 使用七牛云的
go env -w GOPROXY=https://goproxy.io,direct// 全球代理
使用go mod
使用命令go mod init app_name
初始化项目结构,app_name建议与文件夹名一致,但不强制要求。主要后面引用自定义包时,需要带上该名称,避免遗忘还是建议与文件夹名一致。
使用命令go mod vendor
建立vendor文件夹,并将依赖复制到该文件夹(注意:三方包要在项目中被引用,才会复制过来)
此时,使用go get
命令下载的依赖包,会自动保存到$GOPATH/pkg/mod
下,每下载一个依赖,执行go mod vendor
将依赖复制到vendor目录下
如果使用自定义的包,GO不支持文件路径的引用形式,例如./
或../
。如需使用,请以app_name开头
,例如如下结构中:
my_app
|_ my
| |_ my.go
|_ main.go
在main.go
中希望使用package my中的方法或变量时,引用方式为import "my_app/my"
,并且方法或变量的首字母要为大写