1、我的go版本是1.14,在我学习的时候govendor不在更新了,并且作者也也推荐大家不要在使用这一工具,而是让大家使用Go Modules,即官方正式推出的包依赖管理工具。
govendor不再更新
2020年了学一下Go Modules用起来吧
2、设置环境变量GO111MODULE,并开启代理
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
可以使用go env命令查看设置的环境变量
3、使用go mod来安装gin框架
首先建立一个文件夹(test),打开新建终端执行
go mod init test
test文件夹内就会生成一个go.mod文件
go mod初始化
接着在test文件夹下新建一个go文件,例如test.go
package main
import "github.com/gin-gonic/gin"
func main() {
r := gin.Default()
r.GET("/ping", func(c *gin.Context) {
c.JSON(200, gin.H{
"message": "pong",
})
})
r.Run() // listen and serve on 0.0.0.0:8080
}
项目所需要的第三方包都会通过go module来下载管理放在GOPATH/pkg/mod下面,下一步我们使用
go build
这个过程就会根据test.go文件里面import的包自动去pkg/mod那里获取,然后生成一个go.sum文件放在自己当前项目文件夹下,里面包含了所有会引用包的关系以及版本号
文件结构
最后使用命令
go run test.go
现在我们打开浏览器输入localhost:8080
在返回控制台,可以看到我们已经启动了localhost:8080端口的监听与服务
使用Go Modules的好处是现在我们可以在任何位置开发项目了,而不是被限制在$GOPATH/src。
推荐一篇不错的相关博客