登录
首页 >  Golang >  Go问答

Go 模块与包

来源:stackoverflow

时间:2024-04-01 09:09:28 412浏览 收藏

最近发现不少小伙伴都对Golang很感兴趣,所以今天继续给大家介绍Golang相关的知识,本文《Go 模块与包》主要内容涉及到等等知识点,希望能帮到你!当然如果阅读本文时存在不同想法,可以在评论中表达,但是请勿使用过激的措辞~

问题内容

刚刚开始了解 Go 模块。我有一个关于在同一模块中导入本地包的问题。我正在查看的示例是这个存储库:

https://github.com/Azure/azure-service-bus-go

该模块是 module github.com/Azure/azure-service-bus-go。该模块内有一个单独的包 atom (但它本身不是一个模块)。 当主包中的文件导入atom时,它们会这样做: import "github.com/Azure/azure-service-bus-go/atom" -- 请参阅 queue_manager.go 作为示例。

我不太明白——GO 如何知道查看本地 Atom 包,而不是 Github 上的包?让我感到困惑的是,正在修改的模块的一部分是由远程/绝对 URI 引用的。是否可以保证,如果我修改本地磁盘上的文件并构建,我实际上引用的是最新版本,而不是已经推送的版本?

作为一个玩具练习,我尝试创建一个具有不存在的 Github URI 的模块,事实上 go mod tidy 试图在 Github 上查找该模块,尽管本地副本实际上存在


解决方案


  • 模块是 Go 包的集合。
  • 是 .go 文件的目录。使用包,您可以组织您的 代码转换成可重用的单元。
  • 我们可以添加模块到go项目中或者升级模块版本。

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《Go 模块与包》文章吧,也可关注golang学习网公众号了解相关技术文章。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>