美文网首页
解决Go dial tcp 216.58.200.***:***

解决Go dial tcp 216.58.200.***:***

作者: 酒深巷子Ya | 来源:发表于2020-07-23 14:01 被阅读0次

    开启GO111MODULE
    用环境变量 GO111MODULE 开启或关闭模块支持,它有三个可选值:off、on、auto,默认值是 auto。
    GO111MODULE=off 无模块支持,go 会从 GOPATH 和 vendor 文件夹寻找包。
    GO111MODULE=on 模块支持,go 会忽略 GOPATH 和 vendor 文件夹,只根据 go.mod 下载依赖。
    GO111MODULE=auto 在 GOPATH/src 外面且根目录有 go.mod 文件时,开启模块支持。 在使用模块的时候,GOPATH 是无意义的,不过它还是会把下载的依赖储存在GOPATH/src/mod 中,也会把 go install 的结果放在 $GOPATH/bin 中。
    go env -w GO111MODULE=on

    在Go 1.13中,我们可以通过GOPROXY来控制代理,以及通过GOPRIVATE控制私有库不走代理。
    设置GOPROXY代理:

    go env -w GOPROXY=https://goproxy.cn,direct
    

    设置GOPRIVATE来跳过私有库,比如常用的Gitlab或Gitee,中间使用逗号分隔:

    go env -w GOPRIVATE=.gitlab.com,.gitee.com
    

    如果在运行go mod vendor时,提示Get https://sum.golang.org/lookup/xxxxxx: dial tcp 216.58.200.49:443: i/o timeout,则是因为Go 1.13设置了默认的GOSUMDB=sum.golang.org,这个网站是被墙了的,用于验证包的有效性,可以通过如下命令关闭:

    go env -w GOSUMDB=off
    

    可以设置 GOSUMDB=“sum.golang.google.cn”, 这个是专门为国内提供的sum 验证服务。

    go env -w GOSUMDB="sum.golang.google.cn"
    

    相关文章

      网友评论

          本文标题:解决Go dial tcp 216.58.200.***:***

          本文链接:https://www.haomeiwen.com/subject/zmxhlktx.html