使用golang引入外部包的三种方式:go get, go module, vendor目录

 更新时间:2024年01月19日 09:57:45   作者:guoguolifang  
这篇文章主要介绍了使用golang引入外部包的三种方式:go get, go module, vendor目录,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

import  "github.com/astaxie/beego"  编译出错解决方案:

go get

确保你的GOPATH是工程目录,代码在src目录下,然后在命令提示符中输入:go get github.com/astaxie/beego,

然后在本地的src下就生成了要引入的外部包。

注意:

在使用GoLand工具时,配置settings->Go->GOPATH->Project GOPATH为当前工程目录

go module

Go 的 1.11版本以上才能使用Go Module,1.13版本以下Go Module默认关闭,

首先需要设置环境变量 set GO111MODULE=on,

在GOPATH的目录下,新建项目文件夹,进入新建路径执行go mod init,在文件夹下生成go.mod文件,

然后将需要引入外部包的go文件置于项目目录下,编译文件,就会把外部包下载到本地的GOPATH/pkg/mod目录下

注意:

在使用GoLand工具时,不要配置Project GOPATH为当前工程目录,最好不要配置Project GOPATH,而是配置Module GOPATH

vendor目录

首先安装govendor : go get -u -v github.com/kardianos/govendor

下载完,配置环境变量GOPATH/bin,键入命令govendor -version 检查是否安装成功

在GOPATH/src的目录下,新建项目文件夹,进入新建路径执行gogovendor init,就会在文件夹下生成vendor/vendor.json,

然后将需要引入外部包的go文件置于项目目录下,

使用命令:

govendor fetch github.com/golang/glog 将外部文件下载到本地vendor/下,并在vendor.json中添加该依赖包的信息,其中govendor fetch是从从远端库添加依赖包,而从 $GOPATH 中添加依赖包,使用govendor add

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Golang函数式编程深入分析实例

    Golang函数式编程深入分析实例

    习惯与函数式编程语言的开发者,会认为for循环和if判断语句是冗长的代码,通过使用map和filter处理集合元素让代码更可读。本文介绍Go闭包实现集合转换和过滤功能
    2023-01-01
  • 手把手带你走进Go语言之条件表达式

    手把手带你走进Go语言之条件表达式

    条件表达式由条件运算符构成,并常用条件表达式构成一个赋值语句,本文给大家介绍了在Go语言中条件表达式的具体用法,讲述的非常详细,对大家的学习或工作具有一定的参考借鉴价值
    2021-09-09
  • Golang动态调用方法小结

    Golang动态调用方法小结

    本文主要介绍了Golang动态调用方法小结,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • Golang科学计数法转换string数字输出的实现

    Golang科学计数法转换string数字输出的实现

    最近接手一个商城运单号模块,接手后发现有部分运单号返回给前端是按照科学计数法的方式返回,本文就介绍一下Golang科学计数法转换string数字输出,感兴趣的可以了解一下
    2021-07-07
  • 在 Golang 中实现一个简单的Http中间件过程详解

    在 Golang 中实现一个简单的Http中间件过程详解

    本文在go web中简单的实现了中间件的机制,这样带来的好处也是显而易见的,当然社区也有一些成熟的 middleware 组件,包括 Gin 一些Web框架中也包含了 middleware 相关的功能,具体内容详情跟随小编一起看看吧
    2021-07-07
  • 一文带你玩转Golang Prometheus Eexporter开发

    一文带你玩转Golang Prometheus Eexporter开发

    本文分两大块,一是搞清楚prometheus四种类型的指标Counter,Gauge,Histogram,Summary用golang语言如何构造这4种类型对应的指标,二是搞清楚修改指标值的场景和方式,感兴趣的可以了解一下
    2023-02-02
  • Go中变量命名规则与实例

    Go中变量命名规则与实例

    命名规则涉及变量、常量、全局函数、结构、接口、方法等的命名,下面这篇文章主要给大家介绍了关于Go中变量命名的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-01-01
  • 使用Go module和GoLand初始化一个Go项目的方法

    使用Go module和GoLand初始化一个Go项目的方法

    这篇文章主要介绍了使用Go module和GoLand初始化一个Go项目,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • golang实现基于channel的通用连接池详解

    golang实现基于channel的通用连接池详解

    这篇文章主要给大家介绍了关于golang实现基于channel的通用连接池的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-02-02
  • Go语言pointer及switch fallthrough实战详解

    Go语言pointer及switch fallthrough实战详解

    这篇文章主要为大家介绍了Go语言pointer及switch fallthrough实战详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06

最新评论