go.mod 中的“不兼容”是什么意思,会造成伤害吗?
技术问答
217 人阅读
|
0 人回复
|
2023-09-12
|
我在我的项目中使用它goczmq,如下所示:
" Z$ R$ y! O/ n4 r! q" [main.go:
2 q. ^) r% H/ K
5 ?/ {6 @# h0 s) v2 r6 U) t- ~! \- package mainimport _ "github.com/zeromq/goczmq")func main()code]而且,我用 golang 1.12 和 gomod 管理我的项目。
7 `5 H, P a1 i+ g+ Y& \ - 接下来,我用go mod init xxx,在构建过程中,它会自动为我下载 goczmq 并添加依赖项go.mod,但其中有incompatible。(但对于其他图书馆,我可能会得到类似的东西github.com/kolo/xmlrpc v0.0.0-20190717152603-07c4ee3fd181)
! }3 @6 N* A) {' g6 D0 l - go.mod:[code]module pigeongo 1.12require github.com/zeromq/goczmq v4.1.0 incompatible)
- T T7 E9 r z- [% f8 v 从一些讨论(对于其他图书馆),比如this,图书馆所有者似乎应该做些什么来支持 golang 1.12?但是在我的情况下,一切都很好,只是incompatible让我有点担心(我的意思是现在一切都很好,但有一天,当我使用我以前从未使用过的 时,api 时,会有隐藏的炸弹......?)3 d# |# v- N- j7 P# {9 Q1 [9 u
所以我的问题:
# n0 f4 P& i8 o5 f! f我应该担心这个,还是像预期的那样?
9 {$ K! ~/ M: ~0 @" |1 {* Q
5 M" `1 B; ~' I; `3 _, D9 O. r) ? 解决方案:
9 U3 C. {% w0 r" t3 z incompatible 意味着 semver 主要版本是 2 或更高,而不是 Go 模块(它的源代码中没有 go.mod)。 |
|
|
|
|
|