• 解决go get下载包失败问题


    由于某些不可抗力的原因,国内使用go get命令安装包时会经常会出现timeout的问题。本文介绍几个常用的解决办法。

    从github克隆

    golang在github上建立了一个镜像库,如https://github.com/golang/net就对应是 https://golang.org/x/net的镜像库。 要下载golang.org/x/net包,可以在本地创建包的目录后使用git clone来拉取相应包的源代码文件,具体操作如下:

    mkdir -p $GOPATH/src/golang.org/x
    cd $GOPATH/src/golang.org/x
    git clone https://github.com/golang/net.git

    使用gopm

    使用gopm可以从golang.org的一些镜像网站上下载。

    安装gopm

    go get -u github.com/gpmgo/gopm
    

    使用gopm安装第三方包

    不加-g参数,会把依赖包下载.vendor目录下面; 加上-g参数,可以把依赖包下载到GOPATH目录中。

    gopm get -g golang.org/x/net  
    

    使用goproxy

    Go的1.11版本以后 可以设置GOPROXY这个变量,来设置代理。 如果你自己有代理服务器就可以把这个环境变量设置成自己的代理。 首先开启go module支持:

    在Mac/linux下执行:

    export GO111MODULE=on
    

    Windows平台执行:

    SET GO111MODULE=on
    

    2019.6.10更新:goproxy.cn

    我们这里以https://goproxy.cn为例:

    在Mac/linux下可以执行以下命令来设置:

    export GOPROXY=https://goproxy.cn
    

    Windows平台在cmd执行以下命令来设置:

    SET GOPROXY="https://goproxy.cn"
    

    或者在PowerShell中执行:

    C:> $env:GOPROXY = "https://goproxy.cn"
    
  • 相关阅读:
    leetcode 3.回文数
    vue系列 url的hash和HTML5的history
    并发编程 六 支付接口并发
    python+uvicorn+fastapi (一) 认识与第一个DEMO
    并发编程四(4) 线程同步 Condition
    vue系列 vuerouter安装配置呈现DEMO
    leetcode 6.有效的括号
    leetcode 1.两数之和
    AIRTEST 剑与远征 推图脚本
    leetcode 2.整数反转
  • 原文地址:https://www.cnblogs.com/Golanguage/p/12287518.html
Copyright © 2020-2023  润新知