我是个新手,正在尝试创建我的第一个程序。根据各种入门和教程,我创建了一个新模块,出于我的目的,它需要依赖于这个模块:
github.com/timescale/promscale@0.6.2我的问题是,模块的依赖项没有“正确地采用”语义版本控制方法。
go list -e -m all
...
k8s.io/client-go v12.0.0+incompatible
...报告了37个这样的模块...因此,联系模块作者让他们采用SIV,正如我所看到的,将不会是一个选择。
我是否遗漏了什么,或者我应该完全放弃在这个新项目中使用模块?
发布于 2021-11-25 18:02:36
考虑到第三方的“不兼容”模块,
Go模块现在真的可以使用吗?
是。
我是不是漏掉了什么
也许:这个“+不可兼容”并不是失败的标志。
,或者我应该完全放弃在这个新项目中使用模块吗?
不,当然没有。
发布于 2021-11-26 07:26:32
感谢你的回答和评论,似乎是这样的:
如果存在+不兼容的依赖关系,
go list -m all将不会像所有教程中描述的那样工作,而是会在第一个不兼容的模块上卡住。go list -m -e all看起来像预期的那样工作。
如果你使用的是Goland,使用GOFLAGS=-e似乎可以使依赖解析工作,尽管+不兼容的模块。这可能会有我不知道的副作用。
https://stackoverflow.com/questions/70114796
复制相似问题