使用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中匿名组合实现伪继承的方法

    这篇文章主要介绍了Golang中匿名组合实现伪继承的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • GScript 编写标准库示例详解

    GScript 编写标准库示例详解

    这篇文章主要为大家介绍了GScript 编写标准库示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • go等待一组协程结束的操作方式

    go等待一组协程结束的操作方式

    这篇文章主要介绍了go等待一组协程结束的操作方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-05-05
  • golang struct扩展函数参数命名警告解决方法

    golang struct扩展函数参数命名警告解决方法

    今天在使用VSCode编写golang代码时,定义一个struct,扩展几个方法,需要的朋友可以参考下
    2017-02-02
  • Go channel实现批量读取数据

    Go channel实现批量读取数据

    Go中的 channel 其实并没有提供批量读取数据的方法,需要我们自己实现一个,使用本文就来为大家大家介绍一下如何通过Go channel实现批量读取数据吧
    2023-12-12
  • Go数组的具体使用

    Go数组的具体使用

    Go语言中的数组是一种固定长度的数据结构,它包含一组按顺序排列的元素,每个元素都具有相同的类型,本文主要介绍了Go数组的具体使用,包括声明数组、初始化数组、访问数组元素等,感兴趣的可以了解下
    2023-11-11
  • Go语言中的IO操作及Flag包的用法

    Go语言中的IO操作及Flag包的用法

    这篇文章介绍了Go语言中的IO操作及Flag包的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Go语言copy()实现切片复制

    Go语言copy()实现切片复制

    本文主要介绍了Go语言copy()实现切片复制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • 详解Go中指针的原理与引用

    详解Go中指针的原理与引用

    在 Go 中,指针是强大而重要的功能,它允许开发人员直接处理内存地址并实现高效的数据操作,本文主要带大家了解下指针在 Go 中的工作原理以及对于编写高效、高性能代码的重要性,希望对大家有所帮助
    2023-09-09
  • 简化Go开发提高生产力的强大工具及使用详解

    简化Go开发提高生产力的强大工具及使用详解

    作为 Go 开发人员,应该都知道维持简洁高效开发工作流程的重要性,为了提高工作效率和代码质量,简化开发流程并自动执行重复性任务至关重要,在本文中,我们将探讨一些强大的工具和技术,它们将简化 Go 开发过程,助力您的编码之旅
    2023-10-10

最新评论