【golang】24、go get 和 go mod:indrect 与 go mod tidy

文章目录

go get 会执行如下操作:

  • 操作 go.mod 文件(add、update、remove)
  • 下载依赖到 $GOPATH/pkg/mod 中
  • 若已安装,则更新该包,到最新版本

试验前置准备:首先删除已下载的依赖,rm -rf $GOPATH/pkg/mod/github.com/gorilla/websocket,该目录效果如下:

然后开始试验:
首先,刚开始建项目时,go.mod 只有两行 :module 名和 go 版本

module benchmarkdemo

go 1.21.6

然后,在项目目录,执行 go get

➜  awesomeProject2 go get "github.com/gorilla/websocket"
go: added github.com/gorilla/websocket v1.5.1
go: added golang.org/x/net v0.17.0

则会,在 go.mod 添加两行,且均为 // indrect

module benchmarkdemo

go 1.21.6

require (
    github.com/gorilla/websocket v1.5.1 // indirect
    golang.org/x/net v0.17.0 // indirect
)

其中 // indrect 表示,这是暂未使用的依赖
并且,下载源码到 $GOPATH/pkg/mod 中,下载后,效果如下:

然后,如果在项目中使用了该库的方法,例如:

import "github.com/gorilla/websocket"

var (
    upgrader = websocket.Upgrader{}
)

此时,go.mod 是不会自动变化的

只有当手动运行

go mod tidy

时,才会消除 go.mod 中的 // indrect,表明此库已被使用,此时效果如下(可以看到 github.com/gorilla/websocket 已被使用,而 golang.org/x/net 还暂未被使用)

module benchmarkdemo

go 1.21.6

require github.com/gorilla/websocket v1.5.1

require golang.org/x/net v0.17.0 // indirect

参考:

  • go get 和 go install 区别:https://go.dev/doc/go-get-install-deprecation
  • go.mod 的 // indrect 含义:https://stackoverflow.com/questions/72163772/why-are-all-dependency-in-go-mod-indirect

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/376625.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

STM32——LCD(1)认识

目录 一、初识LCD 1. LCD介绍 2. 像素 3. LED和OLED显示器 4. 显示器的基本参数 (1)像素 (2)分辨率 (3)色彩深度 (4)显示器尺寸 (5)点距 二、液晶…

[word] word大小写快捷键是什么? #知识分享#学习方法#笔记

word大小写快捷键是什么? word转换大小写的快捷方式是按“ShiftF3”。设置方法如下: 1、在电脑桌面找到需要转换大小写的文档,右键单击打开它。 2、打开文档之后,在文档里面选中需要转换的段落。 3、选中了之后在键盘里面找到“…

【已解决】onnx转换为rknn置信度大于1,图像出现乱框问题解决

前言 环境介绍: 1.编译环境 Ubuntu 18.04.5 LTS 2.RKNN版本 py3.8-rknn2-1.4.0 3.单板 迅为itop-3568开发板 一、现象 采用yolov5训练并将pt转换为onnx,再将onnx采用py3.8-rknn2-1.4.0推理转换为rknn出现置信度大于1,并且图像乱框问题…

Python操作Word表格对齐、单元格对齐

通过Table的alignment可以设置表格居左对齐、居中对齐、居右对齐。通过Cell的vertical_alignment可以设置垂直位置。通过单元格里段落的alignment可以设置文本的左右对齐方式。 import docx from docx.enum.table import WD_TABLE_ALIGNMENT, WD_CELL_VERTICAL_ALIGNMENT from…

李宏毅LLM——大模型+大资料的神奇力量

文章目录 大模型的重要性顿悟时刻 大资料的重要性数据预处理不一样的做法:KNN LM 对应视频P12-P14 大模型的重要性 模型参数和数据集越大,文字接龙的错误率越低 顿悟时刻 当模型超过10B-20B时,会突然顿悟 启示:不能只看最终结…

软件定义网络 SDN 简介、OpenFlow

目录 软件定义网络 SDN 简介 1 SDN 与 协议 OpenFlow 1.1 SDN 1.2 OpenFlow 1.2.1 协议 OpenFlow 1.2.2 OpenFlow 数据层面 (1)匹配 动作 (2)流表 1.流表由远程控制器管理 2.流表结构 2 SDN 体系结构 3 SDN 控制器 软…

机器学习--K近邻算法,以及python中通过Scikit-learn库实现K近邻算法API使用技巧

文章目录 1.K-近邻算法思想2.K-近邻算法(KNN)概念3.电影类型分析4.KNN算法流程总结5.k近邻算法api初步使用机器学习库scikit-learn1 Scikit-learn工具介绍2.安装3.Scikit-learn包含的内容4.K-近邻算法API5.案例5.1 步骤分析5.2 代码过程 1.K-近邻算法思想 假如你有一天来到北京…

【 buuctf-后门查杀】

采用 D 盾进行扫描查杀 有一个级别为 5 的扫描结果,记事本打开,即为 flag

【保姆级教程|YOLOv8改进】【6】快速涨点,SPD-Conv助力低分辨率与小目标检测

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

Python进阶--爬取下载人生格言(基于格言网的Python3爬虫)

目录 一、此处需要安装第三方库: 二、抓包分析及Python代码 1、打开人生格言网(人生格言-人生格言大全_格言网)进行抓包分析 2、请求模块的代码 3、抓包分析人生格言界面 4、获取各种类型的人生格言链接 5、获取下一页的链接 6、获取人生格言的…

最新话费充值系统源码,附带系统安装教程

搭建教程 亲测环境:PHP7.0MySQL5.6 PHP扩展安装:sg11 数据库配置文件路径:/config/database.php 伪静态设置为thinkphp 后台地址:/admin 账号密码:admin/123456

SpringBoot源码解读与原理分析(八)ApplicationContext

文章目录 3.1.2 ApplicationContext3.1.2.1 ApplicationContext根接口3.1.2.2 ConfigurableApplicationContext3.1.2.3 EnvironmentCapable3.1.2.4 MessageSource3.1.2.5 ApplicationEventPublisher3.1.2.6 ResourcePatternResolver3.1.2.7 AbstractApplicationContext3.1.2.8 …

当我们一起走过 2023|Apache Doris 年度时刻盘点

2024 年的第一个月已经彻底过去,2023 年的回顾总结才姗姗来迟。 在过去一年的大多数时间里,我们一直处于忙碌的状态中,紧锣密鼓的代码研发、高速推进的版本迭代、行程紧密的全国之行,众多社区用户与开发者皆是见证。 越是忙碌&a…

Yearning审核平台本地安装配置并结合内网穿透实现远程访问

文章目录 前言1. Linux 部署Yearning2. 本地访问Yearning3. Linux 安装cpolar4. 配置Yearning公网访问地址5. 公网远程访问Yearning管理界面6. 固定Yearning公网地址 前言 Yearning 简单, 高效的MYSQL 审计平台 一款MYSQL SQL语句/查询审计工具,为DBA与开发人员使用…

vector类的模拟实现

实现基本的vector框架 参考的是STL的一些源码&#xff0c;实现的vector也是看起来像是一个简略版的&#xff0c;但是看完能对vector这个类一些接口函数更好的认识。 我们写写成员变量&#xff0c;先来看看STL的成元变量是那些 namespace tjl {template<class T>class …

【C语言|数据结构】数据结构顺序表

目录 一、数据结构 1.1概念 1.2总结 1.3为什么需要数据结构&#xff1f; 二、顺序表 1.顺序表的概念及结构 1.1线性表 2.顺序表分类 2.1顺序表和数组的区别 2.2顺序表的分类 2.2.1静态顺序表 2.2.1.1概念 2.2.1.2缺陷 2.2.2动态顺序表 三、动态顺序表的实现 3.1新…

Pandas文本数据处理技术指南—从查找到时间序列分析【第66篇—python:文本数据处理】

文章目录 Pandas文本数据处理技术指南引言 1. 查找文本数据2. 替换文本数据3. 拼接文本数据4. 正则表达式操作5. 虚拟变量6. 处理缺失值7. 分割文本数据8. 字符串处理方法9. 文本数据的合并与连接10. 文本数据的排序11. 文本数据的统计分析12. 文本数据的分组与聚合13. 文本数据…

使用Softing edgeConnector模块将云轻松连接到Siemens PLC

一 工业边缘的连接解决方案 云服务提供商 (CSP) 引入了服务和功能&#xff0c;以简化基于云的工业物联网解决方案的实施。Azure Industrial IoT Platform或AWS IoT SiteWise支持标准协议和接口&#xff0c;例如OPC UA或MQTT。但是&#xff0c;如果您希望在典型的旧改项目中连接…

【代理模式】

定义&#xff1a;代理模式是一种结构型设计模式&#xff0c;它允许我们创建一个代理对象&#xff0c;用于控制对另一个对象的访问。 代理对象充当了被代理对象&#xff08;目标对象&#xff09;的代表&#xff0c;与被代理对象实现相同的接口&#xff0c;从而实现对被代理对象…