解决问题: go get certificate signed by unknown authority 换个代理或者
出现问题分析
GOPROXY
代理有问题魔法墙问题
状况错误提示:
执行命令
go get -insecure github.com/tiaguinho/gosoap
错误提示如下:
go get github.com/tiaguinho/gosoap: module github.com/tiaguinho/gosoap: Get "https://goproxy.io/github.com/tiaguinho/gosoap/@v/list": x509: certificate signed by unknown authority
解决
关闭代理,启用魔法墙.
或者换一个代理
设置与切换代理方法
Go
版本是 1.13 及以上
$ go env -w GO111MODULE=on
$ go env -w GOPROXY=https://goproxy.cn,direct
其他版本
$ export GO111MODULE=on
$ export GOPROXY=https://goproxy.cn
查看GO的配置
$ go env
以JSON
格式输出
$ go env -json
国内其他代理
goproxy
七牛云
阿里云
问题解决
换了个代理
执行成功
执行代码 如下:
D:\go
λ go env -w GOPROXY=https://goproxy.cn,direct
D:\go
λ go get github.com/tiaguinho/gosoap
go: github.com/tiaguinho/gosoap upgrade => v1.4.4
go: downloading golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553
如果还没解决
再次分析问题
- go get 不支持代码支持之外的仓库。并且git 调用链过程采取了https
- 下载过程如果机器设置了GOPROXY,会导致下载失败
- 编译过程会导致CHECKSUM失败
说明,是google
不让你拉取私有包.
那么,你需要设置私有包.
再次解决问题
目前有以下三种方式:
给释出的仓库打tag比如v0.0.1,这样仓库地址就可以被识别
配置 私有
export GOPRIVATE=git.xxxxxxx.com
go
1.13版本以上go env -w GOPRIVATE=git.xxxxxxx.com
go build
的时候系统就不会用GOPROXY
以及不再校验SUM
- 调整
git https===>ssh
,注意username
换成自己的用户名[url "username@git.xxxxxxx.com"] insteadOf = https://git.xxxxxxx.com
如果还还还没解决!
那你放弃吧.换个包.
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: