【发布时间】:2022-03-26 04:45:40
【问题描述】:
是我自己还是使用未发布的 go 模块非常痛苦?
https://go.dev/doc/modules/managing-dependencies#tmp_9
https://groups.google.com/g/golang-nuts/c/9MfGXLmRu8w/m/D2gm_viYBAAJ
从这两个链接中,我找到了替换指令。但现在我遇到了困难。
假设我有包 example.com/p1、example.com/p2 和 example.com/p3。 p1 使用 p2,p2 使用 p3。
我添加了替换指令:
- go.mod for p2 中 p3 的路径
- p1 的 go.mod 中 p2 的路径
但现在看来我还需要在 p1 的 go.mod 中为 p3 添加一个替换指令。 由于我拥有大量未发布的软件包,这变得非常痛苦。
这是预期的还是我做错了什么?
-
你用过 Git 吗?您可以使用私有 Git URL 作为模块路径。
-
如果这些都未发布,为什么要在多个模块中?将它们组合在一起可能更容易,因为没有发布的位置可以从中获取它们。否则你必须在主包的模块中使用替换
-
@JimB 将它们组合在一起是我采用的方法,现在还可以。谢谢!