gpt4 book ai didi

Go 模块与包

转载 作者:行者123 更新时间:2023-12-01 22:22:46 25 4
gpt4 key购买 nike

刚开始学习 Go Modules。我有一个关于在同一个模块中导入本地包的问题。我正在查看的示例是这个 repo:

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

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

我不太明白 - GO 如何知道查看本地原子包,而不是说 Github 上的那个?让我感到困惑的是,作为被修改模块的一部分的东西被远程/绝对 URI 引用。是否保证如果我修改本地磁盘上的文件并构建我实际上引用的是最新版本而不是已经推送的东西?

作为一个玩具练习,我尝试使用不存在的 Github URI 创建一个模块,实际上它确实显示为 go mod tidy试图在 Github 上查找它,即使本地副本确实存在

最佳答案

module directivego.mod file 声明该模块中所有包的导入路径前缀。
如果你刚开始学习 Go 模块,
Create a Go module教程可能是一个很好的起点。

关于Go 模块与包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61940117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com