go module使用本地包的方法示例

 更新时间:2019年03月27日 15:06:24   作者:fizz  
这篇文章主要介绍了go module使用本地包的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

go module的使用非常简单

初始化go.mod

go mod init

整理依赖包

go mod tidy

如果想缓存到vendor目录

go mod vendor

执行命令之后都会自动把依赖搞定.

但是, 如果我们是本地开发的包, 还没有远程仓库的时候, 要怎么解决本地包依赖问题呢?

使用replace将远程包替换为本地包服务

幸运的是, go module 提供了另外一个方案, replace, 这个replace怎么使用的呢?

我们先看一下一个最基本的mod文件

module GoRoomDemo
go 1.12
require (
  github.com/gin-gonic/gin v1.3.0
  github.com/gohouse/goroom v0.0.0-20190327052827-9ab674039336
  github.com/golang/protobuf v1.3.1 // indirect
  github.com/gomodule/redigo v2.0.0+incompatible
  github.com/mattn/go-sqlite3 v1.10.0
  github.com/stretchr/testify v1.3.0 // indirect
  golang.org/x/net v0.0.0-20190320064053-1272bf9dcd53 // indirect
)

 这是一个简单的GoRoom框架的依赖关系包, 如果我想使用本地的goroom, 只需要使用replace即可

module GoRoomDemo

go 1.12

require (
  github.com/gin-gonic/gin v1.3.0
  github.com/gohouse/goroom v0.0.0-20190327052827-9ab674039336
  github.com/golang/protobuf v1.3.1 // indirect
  github.com/gomodule/redigo v2.0.0+incompatible
  github.com/mattn/go-sqlite3 v1.10.0
  github.com/stretchr/testify v1.3.0 // indirect
  golang.org/x/net v0.0.0-20190320064053-1272bf9dcd53 // indirect
)

replace github.com/gohouse/goroom => /path/to/go/src/github.com/gohouse/goroom

这里的 path/to/go/src/github.com/gohouse/goroom 是本地的包路径

这样, 我们就可以愉快的使用本地目录了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Go语言eclipse环境搭建图文教程

    Go语言eclipse环境搭建图文教程

    这篇文章主要介绍了Go语言eclipse环境搭建的方法,结合图文形式详细分析了在eclipse环境下开发Go语言所涉及的组件下载、安装及相关设置方法,需要的朋友可以参考下
    2016-07-07
  • Go语言建议多使用切片少使用数组原理探究

    Go语言建议多使用切片少使用数组原理探究

    这篇文章主要为大家介绍了Go语言建议多使用切片少使用数组原理探究,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • golang 并发编程之生产者消费者详解

    golang 并发编程之生产者消费者详解

    这篇文章主要介绍了golang 并发编程之生产者消费者详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-05-05
  • golang之数组切片的具体用法

    golang之数组切片的具体用法

    本文主要介绍了golang之数组切片的具体用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • 关于Golang获取当前项目绝对路径的问题

    关于Golang获取当前项目绝对路径的问题

    这篇文章主要介绍了Golang获取当前项目绝对路径的问题,通常的做法是go run用于本地开发,用一个命令中快速测试代码确实非常方便;在部署生产环境时,我们会通过go build构建出二进制文件然后上传到服务器再去执行,那么会产生什么问题呢?感兴趣的朋友一起看看吧
    2022-04-04
  • 一文详解Go语言中的有限状态机FSM

    一文详解Go语言中的有限状态机FSM

    有限状态机(Finite State Machine,FSM)是一种数学模型,用于描述系统在不同状态下的行为和转移条件。本文主要来和大家简单讲讲Go语言中的有限状态机FSM的使用,需要的可以参考一下
    2023-04-04
  • Go语言实现对称加密和非对称加密的示例代码

    Go语言实现对称加密和非对称加密的示例代码

    本文主要介绍了Go语言实现对称加密和非对称加密的示例代码,通过实际代码示例展示了如何在Go中实现这两种加密方式,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • golang切片原理详细解析

    golang切片原理详细解析

    这篇文章主要介绍了golang切片原理详细解析,切片在编译时定义为Slice结构体,并通过NewSlice()函数进行创建,更多相关内容感兴趣的小伙伴可以参考一下下面文章内容
    2022-06-06
  • Go垃圾回收提升内存管理效率优化最佳实践

    Go垃圾回收提升内存管理效率优化最佳实践

    这篇文章主要为大家介绍了Go垃圾回收提升内存管理效率优化最佳实践,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • 使用Gin框架处理表单数据的操作步骤

    使用Gin框架处理表单数据的操作步骤

    在 Web 应用开发中,表单是用户与服务器交互的重要手段,Gin 框架对表单处理提供了高效便捷的支持,包括数据绑定、验证等功能,在本篇博客中,我们将详细介绍如何使用 Gin 框架处理表单数据,涵盖基础操作与进阶技巧,帮助初学者全面掌握表单功能,需要的朋友可以参考下
    2024-11-11

最新评论