• 47.go get安装库以及gopm替换方式——2020年04月12日21:04:30


    go安装moudle

    1.正常解决方法

    一般步骤

    1.首先必须设置环境变量GOPATH的路径
    GOPATH
    例如: D:gogopath       (注意去掉末尾的分号)
    
    2.执行命令来安装第三方包。
    go get github.com/go-sql-driver/mysql  
    
    3.加载安装

    这条命令它会把类库包源代码,下载解压到你的 %GOPATH% 路径里面去,
    比如:D:gogopathsrcgithub.comgo-sql-drivermysql

    前面是gopath路径,后面是类库,并且它还会同时执行 go install xxx ,生成 D:gogopathpkgxxxx 这样的包路径。

    4.代码引用库

    在代码中导入下载的那个第三方包

    import (
       "github.com/go-sql-driver/mysql" 
       // 从环境变量:%goPath% 中定义的路径去查找第三方类库
    )
    
    显示出安装进程

    下载导入路径指定的包及其依赖项,然后安装命名包,即执行go install命令。
    用法:go get [-d] [-f] [-t] [-u] [-fix] [-insecure] [build flags] [packages]

    标记名称	描述
    -d	让命令程序只执行下载动作,而不执行安装动作。
    -f	仅在使用-u标记时才有效。该标记会让命令程序忽略掉对已下载代码包的导入路径的检查。如果下载并安装的代码包所属的项目是你从别人那里Fork过来的,那么这样做就尤为重要了。
    -fix	让命令程序在下载代码包后先执行修正动作,而后再进行编译和安装。
    -insecure	允许命令程序使用非安全的scheme(如HTTP)去下载指定的代码包。如果你用的代码仓库(如公司内部的Gitlab)没有HTTPS支持,可以添加此标记。请在确定安全的情况下使用它。
    -t	让命令程序同时下载并安装指定的代码包中的测试源码文件中依赖的代码包。
    -u	让命令利用网络来更新已有代码包及其依赖包。默认情况下,该命令只会从网络上下载本地不存在的代码包,而不会更新已有的代码包。
    -v	打印出被构建的代码包的名字
    -x	打印出用到的命令
    

    2.go get没用

    1.什么是gopm

    在nodejs中我们有npm,可以通过npm来下载安装一些依赖包。在go中也开发了类似的东西,那就是gopm。

    2.gopm地址

    git地址:https://github.com/gpmgo/gopm
    官方地址:https://gopm.io/gopm
    文档路径:https://github.com/gpmgo/docs/tree/master/zh-CN

    3.gopm安装

    go get -u github.com/gpmgo/gopm
    通过这个命令来安装插件,默认的会存放到GOBIN,如果没有配置%GOBIN%环境变量,那么会默认安装到%GOPATH%下的bin目录,为了我们操作方便,我们把GOBIN加到%PATH%下。

    4.gopm get

    通过gopm get xxx,可以将指定的包下载到gopm的本地仓库~/.gopm/repos(建议使用) 通过'gopm get -g xxx',可以将指定的包下载到GOPATH下。(建议使用) 通过'gopm get -l xxx',可以将指定的包下载到当前所在目录(不常用)

    二、国内的go get问题的解决

    用gopm get -g代替go get
    不采用-g参数,会把依赖包下载.vendor目录下面;
    采用-g 参数,可以把依赖包下载到GOPATH目录中;

    gopm get -g golang.org/x/net
    

    直接clone github仓库

    将github相关仓库 git clonegopath/src/golang.org/x/ 目录下,然后cd 到相应目录执行go install golang.org/x/sys
    mkdir -p $GOPATH/src/golang.org/x/
    cd $GOPATH/src/golang.org/x/
    git clone https://github.com/golang/sys.git sys
    go install golang.org/x/sys
    

    执行go install之后没有提示,就说明安装好了。

    参考文献:

    go语言简单介绍与module安装

    http://tiramisutes.github.io/2019/08/29/go.html

    国内的go get问题的解决 --gopm

    https://www.jianshu.com/p/db9e6ae0d227

  • 相关阅读:
    创建型设计模式之-单例
    设计模式(1、创造型2、结构型、3行为型)
    手写IOC容器和两种注入(构造方法注入和属性注入)
    从依赖倒置原则到IOC控制反转
    自定义HttpHandler可以做什么
    一个用户在浏览器上输入网址怎么走到我们写的.net程序中的,请求到管道处理
    代理Nginx
    .Net Expression表达式目录树(自己动态创建表达式目录树)
    canvas绘制圆环进度条
    城市二级联动
  • 原文地址:https://www.cnblogs.com/oneapple/p/12687629.html
Copyright © 2020-2023  润新知