Go modules replace解决Go依赖引用问题

作者:K8sCat 时间:2024-04-28 10:49:40 

为什么会用到 replace

取名是一个很有讲究的事情,但每个人都不一样。

  • 一开始,我写了一个 A 项目,代码仓名称为 project-alpha

  • 但 go.mod 里的 package 设置的是 github.com/k8scat/alpha,

  • 当在另一项目 B 中想要引用 A 项目的代码时,一般来说,用的是 github.com/k8scat/project-alpha

  • 因为 go get 会使用 git 去,但由于 package 和代码仓的名称不一样

需要使用 replace 进行转换一下:

package github.com/k8scat/beta
require github.com/k8scat/alpha v0.0.0
replace github.com/k8scat/alpha github.com/k8scat/project-alpha v1.0.0

使用 go mod edit 进行设置 replace:

go mod edit -replace github.com/k8scat/alpha=github.com/k8scat/project-alpha@v1.0.0

注意:该命令只会设置 replace,require 需要另外设置,且 require 的依赖版本被忽略,使用 replace 的依赖版本。

replace 的其他使用场景

解决 golang.org 依赖无法下载的问题

go mod edit -replace golang.org/x/crypto=github.com/golang/crypto@v0.0.0-20160511215533-1f3b11f56072

注意:这里目标依赖的版本号必须符合 SemVer 规范,不能是 master 和 latest(go get 可以用)

参考资料

  • go get 源码

  • go modules 中使用 replace 用法

  • Semantic Versioning

来源:https://juejin.cn/post/6993603894739730463

标签:Go,modules,replace,依赖引用
0
投稿

猜你喜欢

  • 使用Dreamweaver便捷技巧方法十六则

    2010-07-02 16:28:00
  • 通过python将大量文件按修改时间分类的方法

    2023-04-11 00:26:03
  • Go 语言中 20 个占位符的整理

    2024-04-23 09:45:21
  • MySQL DDL执行方式Online DDL详解

    2024-01-25 00:00:56
  • Asp的上下午时间格式问题

    2009-04-13 16:06:00
  • Asp中如何快速分页的技巧

    2008-05-17 12:02:00
  • Python代码集pathlib应用之获取指定目录下的所有文件

    2023-09-06 23:44:39
  • 基于vue的验证码组件的示例代码

    2024-06-05 15:29:22
  • 禁止使用 Firebug

    2009-05-20 12:04:00
  • 在Python中操作字符串之replace()方法的使用

    2021-03-15 14:10:59
  • python脚本打包后无法运行exe文件的解决方案

    2021-02-25 23:25:35
  • python机器学习基础K近邻算法详解KNN

    2024-01-01 05:44:57
  • 4个的Python自动化脚本分享

    2021-05-28 19:22:29
  • mysql累积聚合原理与用法实例分析

    2024-01-25 14:23:43
  • Python获取基金网站网页内容、使用BeautifulSoup库分析html操作示例

    2022-10-04 00:34:40
  • vue.js2.0 实现better-scroll的滚动效果实例详解

    2023-07-02 16:58:50
  • 浅谈python中列表、字符串、字典的常用操作

    2023-02-02 23:59:15
  • mysql 选择插入数据(包含不存在列)具体实现

    2024-01-21 15:15:56
  • PhpStorm配置debug环境的详细过程

    2023-05-26 20:04:32
  • Python内建类型dict深入理解源码学习

    2021-11-12 21:12:29
  • asp之家 网络编程 m.aspxhome.com