引用本地的 Go 模块
本文解决了从本地 Go 模块导入包时遇到的问题由尝试使用模块而不先将其推送到 GitHub 存储库的用户。
问题
在尝试导入本地创建的模块时,用户遇到以下错误:
cannot load github.com/Company/mymodule: cannot find module providing package github.com/Company/mymodule
原因
此发生错误是因为 Go 尝试通过从指定的远程 URL 获取第三方模块来解析它们。在这种情况下,由于模块尚未推送到 GitHub,Go 无法找到它。
解决方案
要使用本地模块,用户可以在 go.mod 文件中使用替换关键字:
replace github.com/Company/mymodule v0.0.0 => ../mymodule
这会通知 Go 本地文件的正确位置
附加说明
测试并将模块推送到存储库后,可以从 go.mod 中删除替换行。要在当前项目中正确使用该模块,可以使用以下命令:
go get -u github.com/Company/mymodule
此外,必须确保 Go 包中的函数和变量以大写字母开头,以便可以从外部访问包裹。
以上是如何导入本地Go模块而不将其推送到远程存储库?的详细内容。更多信息请关注PHP中文网其他相关文章!