go module的使用以及设置go get代理对象

go get 下载速度慢
设置代理路径

方法1 :cmd -> 打开终端
	输入: go env -w GOPROXY=https://goproxy.cn,direct

方法2: 如果安装golang
	打开setting -> 选择Go -> Go Modules 回到下图这个界面
	勾选 Enable Go modules integration选项
	输入 -> GOPROXY=https://goproxy.cn  即可
	

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Y9nXI409-1635757549337)(C:\Users\admin\AppData\Roaming\Typora\typora-user-images\image-20210928132917226.png)]

go中导入第三方包时,引入问题
  1. 为什么 go get 的包下载到pkg/mod (GOPATH)下,而不是src(GOPATH)

    因为墙的原因,很多时候下载包会很慢,通常会设置代理,设置代理开启会开启go_module功能,所以下载的包都会下载$GOPATH$/pkg/mod
    
  2. go module是什么?

    go module是go官方自带的go依赖管理库,在1.13版本正式推荐使用
    go module可以将某个项目(文件夹)下的所有依赖整理成一个 go.mod 文件,里面写入了依赖的版本等
    使用go module之后我们可不用将代码放置在GOPATH下了
    使用 go module 管理依赖后会在项目根目录下生成两个文件 go.mod 和 go.sum。
    
  3. 如何激活go module?

    1)将go升级到1.11版本以后
    2)通过 GO111MODULE 可以开启或关闭 go module 工具。
    	GO111MODULE=off 禁用 go module,编译时会从 GOPATH 和 vendor 文件夹中查找包;
    	GO111MODULE=on 启用 go module,编译时会忽略 GOPATH 和 vendor 文件夹,只根据 go.mod下载依赖;
    	GO111MODULE=auto(默认值),当项目在 GOPATH/src 目录之外,并且项目根目录有 go.mod文件时,开启 go module。
    3)Windows 下开启 GO111MODULE 的命令为:
    	set GO111MODULE=on 或者 set GO111MODULE=auto    	
    

    开启之后,之后创建项目就没必要在GOPATH路径下创建项目,所有的项目依赖包都会由gomodule管理

  4. 常用的go mod 命令

    命令作用
    go mod download下载依赖包到本地(默认为 GOPATH/pkg/mod 目录)
    go mod edit编辑go.mod文件
    go mod init初始化当前文件夹,创建go.mod文件
    go mod tidy增加缺少的包,删除无用的包
    go mod vendor#将依赖转移至本地的vendor文件
  5. 项目中使用

    5.1 创建项目

    5.2 初始化module

    go mod init   生成go.mod文件,项目中会出现这个文件
    

    5.3 检测依赖

    go mod tidy   该命令会检测该文件夹目录下所有引入的依赖,写入 go.mod 文件
    
    同时此时也会生成一个go.sum 文件,用于记录每个依赖包的哈希值,在构建时,如果本地的依赖包hash值与go.sum文件中记录得不一致,则会拒绝构建。
    
    

具体go.sum和go.mod的意义和区别,感兴趣可以自行学习下

注意:这时依赖是还没有下载的

5.4 下载依赖

go mod download

5.5 新增依赖

可使用go get
添加最新版本依赖 go get github.com/xxx/xxx
添加指定版本: go get github.com/xxx/xxx@v1.6.2
添加指定版本范围: go get github.com/xxxx/xxx@’<v1.6.2’
添加指定commit的版本 git commit: go get github.com/xxxx/xxx@q2516faf3

5.5 注意

当使用go module管理包时,引入包时 “./utils” 这用相对路径形式的引入方式将会出错,此时需要改成绝对路径

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值