go mod使用
使用go mod以后,就可以不用在src目录下去创建工程了。
go module 使用前置条件: GO111MODULE 设置为 on
创建文件夹
mkdir collydemo
初始化
cd collydemo
go mod init collydemo
运行
使用了go mod的项目第一次go run的时候它会去搜索需要的包,如果没有就会自己去下载安装。
非常的方便
下面可以看到
🐍 CXAPython🌈/Users/chennan/goproject/demo/collydemo> go run spider.go
go: finding module for package github.com/gocolly/colly
go: found github.com/gocolly/colly in github.com/gocolly/colly v1.2.0
go: finding module for package github.com/saintfish/chardet
go: finding module for package github.com/gobwas/glob
go: finding module for package golang.org/x/net/html/charset
go: finding module for package github.com/antchfx/xmlquery
go: finding module for package golang.org/x/net/html
go: downloading golang.org/x/net v0.0.0-20200927032502-5d4f70055728
go: finding module for package github.com/antchfx/htmlquery
go: finding module for package github.com/kennygrant/sanitize
go: finding module for package github.com/temoto/robotstxt
go: finding module for package github.com/PuerkitoBio/goquery
go: finding module for package google.golang.org/appengine/urlfetch
执行之后在当前collydemo文件夹下初始化一个新的 module,并创建 go.mod 文件;
其他使用方法
拉取缺少的模块,移除不用的模块 : go mod tidy
将依赖复制到 vendor 下 : go mod vendor
下载依赖 : go mod download
检验依赖: go mod verify
显示模块依赖图: go mod graph
解释为什么需要依赖: go mod why
编辑 go.mod 文件: go eidt
查看命令列表: go mod
查看命令帮助文档: go help mod
GOPROXY
https://goproxy.cn
https://goproxy.io
go 1.13 及以上
go env -w GOPROXY=https://goproxy.cn,direct