当前位置: 首页 > news >正文

丽水市莲都建设分局网站东莞证券

丽水市莲都建设分局网站,东莞证券,网站介绍模版,外贸平台做摩托车配件什么网站好构建模式#xff1a;Go Module 的 6 类常规操作 为当前 module 添加一个依赖 我们如何为一个 Go Module 添加一个新的依赖包呢#xff1f; 如果我们要为项目增加一个新依赖#xff1a;github.com/google/uuid#xff0c;我们首先会更新源码#xff1a;package mainimpor…构建模式Go Module 的 6 类常规操作 为当前 module 添加一个依赖 我们如何为一个 Go Module 添加一个新的依赖包呢 如果我们要为项目增加一个新依赖github.com/google/uuid我们首先会更新源码package mainimport (fmtgithub.com/google/uuidgithub.com/sirupsen/logrus )func main() {fmt.Println(hello, world)logrus.Println(uuid.NewString()) }新源码中我们通过 import 语句导入了 github.com/google/uuid并在 main 函数中调用了 uuid 包的函数 NewString。此时如果我们直接构建这个 module我们会得到一个错误提示could not import github.com/google/uuid (no required module provides package github.com/google/uuid) could not import github.com/sirupsen/logrus (no required module provides package github.com/sirupsen/logrus)我们可以使用 go mod tidy 命令在执行构建前自动分析源码中的依赖变化识别新增依赖项并下载它们 升级 / 降级依赖的版本 在实际开发工作中如果我们认为 Go 命令自动帮我们确定的某个依赖的版本存在一些问题比如引入了不必要复杂性导致可靠性下降、性能回退等等我们可以手工将它降级为之前发布的某个兼容版本。Go Module 的版本号采用了语义版本规范也就是版本号使用 vX.Y.Z 的格式。 其中 X 是主版本号Y 为次版本号 (minor)Z 为补丁版本号 (patch)。主版本号相同的两个版本较新的版本是兼容旧版本的。如果主版本号不同那么两个版本是不兼容的。 我们可以在项目的 module 根目录下执行带有版本号的 go get 命令下载指定的低版本依赖包go get github.com/sirupsen/logrusv1.7.0我们可以使用与降级同样的步骤来完成升级。 添加一个主版本号大于 1 的依赖 语义导入版本机制有一个原则如果新旧版本的包使用相同的导入路径那么新包与旧包是兼容的。也就是说如果新旧两个包不兼容那么我们就应该采用不同的导入路径。如果我们要为 Go 项目添加主版本号大于 1 的依赖我们就需要使用“语义导入版本”机制在声明它的导入路径的基础上加上版本号信息。 移除一个依赖 第一想法是删除掉代码中对包导入的这一行之后再利用 go build 命令成功地构建这个项目。与添加一个依赖时 Go 命令给出友好提示不同这次 go build 没有给出任何关于项目已经将包依赖删除的提示并且 go.mod 里 require 段中的依赖依旧存在着。其实要想彻底从项目中移除 go.mod 中的依赖项仅从源码中删除对依赖项的导入语句还不够。这是因为如果源码满足成功构建的条件go build 命令是不会“多管闲事”地清理 go.mod 中多余的依赖项的。那正确的做法是怎样的呢我们还得用 go mod tidy 命令将这个依赖项彻底从 Go Module 构建上下文中清除掉。go mod tidy 会自动分析源码依赖而且将不再使用的依赖从 go.mod 和 go.sum 中移除。 重要场景 通过 go get 我们可以升级或降级某依赖的版本如果升级或降级前后的版本不兼容这里千万注意别忘了变化包导入路径中的版本号这是 Go 语义导入版本机制的要求。通过 go mod tidy我们可以自动分析 Go 源码的依赖变更包括依赖的新增、版本变更以及删除并更新 go.mod 中的依赖信息。通过 go mod vendor我们依旧可以支持 vendor 机制并且可以对 vendor 目录下缓存的依赖包进行自动管理。
http://www.hkea.cn/news/14402017/

相关文章:

  • m开头的手机网站怎么做营销平台是什么意思
  • 网站换域名要怎么做怎么在百度建设一个网站
  • 环保材料 技术支持 东莞网站建设上海专业建设网站制作
  • 外贸通道支持asp的网站吗wordpress进不后台
  • 网站服务器租用选择建设网站如
  • 网站留言短信通知虚拟主机部署网站
  • h5 网站开发流程图公司展示网站制作
  • 基于漏斗模型网站关键路径分析wordpress 关闭warning
  • 网站图片布局长春网站长春网络推广建设
  • 深圳网站设计比较好的公司网站建设 课题研究的背景
  • 医院内外网站建设网站收录方法
  • 学商务网站建设的感想wordpress弹幕播放器插件
  • 可信网站认证 代理商如何创建自己的博客网站
  • 教育网站开发用例图导购类网站怎么做
  • 重庆妇科医院免费咨询上海整站优化公司
  • 长沙移动网站建设哪家好陕西专业网站开发联系电话
  • 济宁网站建设 帮站延庆区加工网站建设推广
  • 国内免费建站网站西安小程序专业开发公司
  • 如何自己做网站手机临沂做网站电话
  • 做网站用python还是php可信网站注册
  • 深圳做网站de有自己网站做淘宝客赚钱吗
  • 大连网站推广建站公司网站模板论坛
  • 青岛开发网站古镇中小企业网站建设
  • 做网站的公司在哪部署自己做的网站吗
  • 万户做网站好不好网站建设需多少钱
  • 做网站的服务器多少钱怎么制作一个app软件
  • 中国建设银行上海分行信息网站路由器映射做网站稳定吗
  • 淘宝客单页网站程序邯郸一堆网络科技
  • 单页面网站制作广东网站设计的公司
  • 电影网站开发api南昌网站建设哪里好