go module 依赖的问题

2023-11-27 17:56:12 +08:00
 yujianwjj

一个 go 项目,依赖 a 和 b 两个 module 。 a 又依赖 c 的 1.0 版本。 b 又依赖 c 的 1.1 版本。

c 的 1.1 版本 和 1.0 版本不兼容,1.1 删了部分对外的接口。

这种情况咋处理?

1198 次点击
所在节点    Go 编程语言
5 条回复
sunny352787
2023-11-27 17:59:21 +08:00
在每个 module 的 go.mod 里加上对应的版本就行了
bwangel
2023-11-27 18:02:13 +08:00
c 提供 2.0 版本

a 依赖 c 的 1.0 版本
b 依赖 c 的 2.0 版本

golang 中只有大版本变了,才允许多版本共存。

小版本不同的话,取最小版本
yujianwjj
2023-11-27 18:02:16 +08:00
a 和 b 是开源的第三方的 模块。
leonshaw
2023-11-27 18:04:25 +08:00
fork replace
lotusgrm
2023-12-04 20:31:27 +08:00
可以使用 replace 重新命名其中其中一个版本

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/995681

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX