我的编程空间,编程开发者的网络收藏夹
学习永远不晚

go mod供应商旧版本的依赖

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

go mod供应商旧版本的依赖

小伙伴们对Golang编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《go mod供应商旧版本的依赖》,就很适合你,本篇文章讲解的知识点主要包括。在之后的文章中也会多多分享相关知识点,希望对大家的知识积累有所帮助!

问题内容

我升级到go1.11并且我正在尝试使用go模块。我克隆了一个项目并运行 go build ,它创建了一个包含所有依赖项的 go.modgo.sum 文件。

现在我想供应这些文件,所以我运行命令 go modvendor

不幸的是,go mod 供应商提供了旧版本的 go-bindata。我的项目无法构建,因为函数调用不存在。查看供应的 go-bindata 的源代码,我可以看到它与 go-bindata 项目的主分支中可用的内容不同。

在我的 go.mod 文件中有这样的内容:

github.com/jteeuwen/go-bindata v3.0.7+incompatible

在我的 go.sum 文件中,有这样的内容:

github.com/jteeuwen/go-bindata v3.0.7+incompatible h1:91uy4d9syvr1kytj15wjsog+esazzl7jmeftkwmhjts=
github.com/jteeuwen/go-bindata v3.0.7+incompatible/go.mod h1:jvvhzyoigbnfsyryv00iy8q7/0pthjiyav1p9h5dmks=

在 github 上,go-bindata 的最新标签是 master 分支上的 v3.0.7。

有什么想法为什么 go mod 引用旧版本以及如何解决这个问题。在另一台机器上,运行 go get -u https://github.com/jteeuwen/go-bindata 获取最新的项目。为什么 go mod 不做同样的事情?

编辑: 问题是 go mod 说它有 v3.0.7,但源代码与 github 上当前可用的 3.0.7 标签不匹配。我本地的看起来像 v3.0.6 但被标记为 v3.0.7。

在 github 上的版本中,有一个如下所示的结构体: 链接至来源

type Config struct {
     //... some other fields
     NoMetadata bool
}

但在我的本地供应版本中,config 结构没有 nometadata 字段。 看起来 go mod 使用的是较旧的标签,并认为它使用的是最新的标签。


解决方案


该存储库的最新标签是 v3.0.7,这就是 go mod 为您提供的内容。来自the FAQ:

问题是您想要的代码不在 3.0.7 标记中,但在 master 分支中吗?

查看更新中的具体 NoMetadata 字段,它是在 2015 年 8 月 13 日在 https://github.com/jteeuwen/go-bindata/commit/7f4fb1184ff6bab28016ed674b61864665ba3d97 中添加的。同时,v3.0.7被标记为2014-11-20

所以看来您感兴趣的更改没有被标记,并且仅位于主分支上。

鉴于这种情况,您可以直接分叉存储库 - 自 2015 年以来它就没有得到维护(自述文件承认它没有维护)。或者找到一些保持最新的东西。或者说服维护者创建一个新标签。

今天关于《go mod供应商旧版本的依赖》的内容介绍就到此结束,如果有什么疑问或者建议,可以在编程网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

go mod供应商旧版本的依赖

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

go mod供应商旧版本的依赖

小伙伴们对Golang编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《go mod供应商旧版本的依赖》,就很适合你,本篇文章讲解的知识点主要包括。在之后的文章中也会多多分享相关知识点,希望对大家的知识积累有所帮助!问题内容我升级到g
go mod供应商旧版本的依赖
2024-04-04

使用什么版本的 Go 来编译依赖项?

php小编百草为您解答使用什么版本的Go来编译依赖项的问题。编译Go代码时,依赖项版本的选择是至关重要的。通常建议使用与项目中已知稳定运行的Go版本兼容的依赖项版本。这样可以确保代码的稳定性和兼容性。同时,也要考虑所使用的依赖项是否还在维护
使用什么版本的 Go 来编译依赖项?
2024-02-09

go下载指定版本的依赖包图文详解

由于依赖包的每个版本都有一个唯一的目录,所以在多项目场景中需要使用同一个依赖包的多版本时才不会产生冲突,下面这篇文章主要给大家介绍了关于go下载指定版本的依赖包的相关资料,需要的朋友可以参考下
2023-05-18

微服务(SpringBoot、SpringCloud、SpringCloud Alibaba、Nacos、JDK)之间的版本对应依赖关系(附Nacos高速下载地址)

前言 本文主要整理与介绍在搭建微服务项目时,核心组件之间的版本对应关系,避免版本依赖冲突带来的一系列问题,同时也方便后续升级与查看。 这里先放上我目前搭建的较新的微服务脚手架版本,如下(springboot3.0开始不支持jdk8) Spr
2023-08-19

测试使用替换指令导入的本地 go 模块并使用主文件夹中的供应商目录

php小编柚子在本文中将为大家介绍如何使用替换指令在本地导入go模块,并使用主文件夹中的供应商目录。替换指令是Go语言中的一项强大功能,可以让我们在开发过程中更灵活地引入本地模块,提高代码的可维护性和复用性。通过本文的指导,相信大家能够轻松
测试使用替换指令导入的本地 go 模块并使用主文件夹中的供应商目录
2024-02-10

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录