zoukankan      html  css  js  c++  java
  • go get 命令下载gin包时出现报错

    使用go get 命令下载gin框架时报错,截图如下:

     报错产生原因有两个:

    第一个:通过查找原因,gin的个别包无法下载是被墙了

    第二个:go在1.13版本后,默认开启了GOSUMDB=sum.golang.org,而这个网址sum.golang.org 在国内是无法访问,故需要关闭

    解决办法:

     第一步:关闭GOSUMDB          命令:【go env -w GOSUMDB=off】

    第二步:更换国内源,彻底解决配置代理也无法下载个别包的问题 (因为在执行go get github.com/gin-gonic/gin时我是配置了goproxy的,依旧无法下载个别包,所以彻底更换国内源)

    命令:【go env -w GO111MODULE=on】  

               【go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct】

     

    设置完后结果呈现:

     总结:

      关闭GOSUMDB=off,更换国内代理源即可完美解决下载问题,设置完后,再执行【go get github.com/gin-gonic/gin】,不到5秒钟,所有gin相关的包均下载成功,也无任何报错

       

    后续反馈:

      经过上述步骤设置后,虽然需要的文件能很快下载下来,但是没有出现在src目录下,而是出现在pkg目录下,因此在goland上无法直接引用gin包中的内容

            

         基于此,我们需要设置下go module 

         

        设置完go module后,在需要调用gin包的文件夹下执行命令【go mod init gin】,就会在这个文件夹下自动生成一个go.mod文件

             

         这个时候在代码操作区输入gin,还无法将相关的包自动带出

         

          最后一步:在命令操作区输入命令【go get github.com/gin-gonic/gin】,执行这步就是导入包,将包从pkg目录引入到src目录下

       

     执行完后,在代码操作区再输入gin,发现跟gin相关的包全都能自动带出

       

    go get 下载包的问题完美解决

    -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    第二种解决办法:不需要启用go module

    先看报错,缺少什么包,就git clone什么包

    进入的gopath的src目录下创建一个文件夹:名称为golang.org,然后进入golang.org后再创建一个文件夹x 

    拉取 github上的golang库包,命令如下:

    git clone https://github.com/golang/sys.git
    
    git clone https://github.com/golang/net.git
    
    git clone https://github.com/golang/text.git
    
    t git clone https://github.com/golang/lint.git
    
    git clone https://github.com/golang/tools.git
    
    git clone https://github.com/golang/crypto.git

    创建文件夹google.golang.org,进入文件夹后再创建protobuf文件夹,执行如下命令,将git clone的内容拷贝至目录下

    git clone https://github.com/protocolbuffers/protobuf-go

    将net、sys、tools三个文件夹放到$GOPATH/src/golang.org/x目录下

     此时再执行【go get github.com/gin-gonic/gin

    两种解决办法,根据情况选择

  • 相关阅读:
    PHP观察者模式 (转)
    PHP单例模式 (转)
    PHP解决并发问题的几种实现(转)
    php结合redis实现高并发下的抢购、秒杀功能 (转)
    使用 redis 减少 秒杀库存 超卖思路 (转)
    mysql视图学习总结(转)
    mysql 存储过程
    PHP中的魔术方法和关键字
    bzoj3462DZY Loves Math II
    bzoj1453[Wc]Dface双面棋盘
  • 原文地址:https://www.cnblogs.com/xiaoyingzhanchi/p/14410626.html
Copyright © 2011-2022 走看看