网站个性化制作,电商网站联盟平台,个人求职简历模板,高端网站建设济南兴田德润简介电话文章目录 go get 会执行如下操作#xff1a;
操作 go.mod 文件#xff08;add、update、remove#xff09;下载依赖到 $GOPATH/pkg/mod 中若已安装#xff0c;则更新该包#xff0c;到最新版本
试验前置准备#xff1a;首先删除已下载的依赖#xff0c;rm -rf $GOPATH… 文章目录 go get 会执行如下操作
操作 go.mod 文件add、update、remove下载依赖到 $GOPATH/pkg/mod 中若已安装则更新该包到最新版本
试验前置准备首先删除已下载的依赖rm -rf $GOPATH/pkg/mod/github.com/gorilla/websocket该目录效果如下
然后开始试验 首先刚开始建项目时go.mod 只有两行 module 名和 go 版本
module benchmarkdemogo 1.21.6然后在项目目录执行 go get
➜ awesomeProject2 go get github.com/gorilla/websocket
go: added github.com/gorilla/websocket v1.5.1
go: added golang.org/x/net v0.17.0则会在 go.mod 添加两行且均为 // indrect
module benchmarkdemogo 1.21.6require (github.com/gorilla/websocket v1.5.1 // indirectgolang.org/x/net v0.17.0 // indirect
)其中 // indrect 表示这是暂未使用的依赖 并且下载源码到 $GOPATH/pkg/mod 中下载后效果如下
然后如果在项目中使用了该库的方法例如
import github.com/gorilla/websocketvar (upgrader websocket.Upgrader{}
)此时go.mod 是不会自动变化的
只有当手动运行
go mod tidy时才会消除 go.mod 中的 // indrect表明此库已被使用此时效果如下可以看到 github.com/gorilla/websocket 已被使用而 golang.org/x/net 还暂未被使用
module benchmarkdemogo 1.21.6require github.com/gorilla/websocket v1.5.1require golang.org/x/net v0.17.0 // indirect参考
go get 和 go install 区别https://go.dev/doc/go-get-install-deprecationgo.mod 的 // indrect 含义https://stackoverflow.com/questions/72163772/why-are-all-dependency-in-go-mod-indirect