go list -m all命令:
$ go list -m all |grep rsc
rsc.io/pdf v0.1.1
rsc.io/quote/v3 v3.1.0
rsc.io/sampler v1.3.0
但我的项目不依赖于rsc.io/sampler
$ go mod why -m rsc.io/sampler
# rsc.io/sampler
(main module does not need module rsc.io/sampler)
go list -m all命令:
$ go list -m all |grep rsc
rsc.io/pdf v0.1.1
rsc.io/quote/v3 v3.1.0
rsc.io/sampler v1.3.0
但我的项目不依赖于rsc.io/sampler
$ go mod why -m rsc.io/sampler
# rsc.io/sampler
(main module does not need module rsc.io/sampler)
因为rcs.io/quote/v3依赖它。
通过引入一个依赖项,你反过来又引入了它的所有依赖项。
至于该main module does not need ...
行,这在go help mod why
帮助文本中进行了解释:
如果包或模块没有从主模块中引用,则该节将显示一个带括号的注释来指示该事实。
当来自的信息go mod why
似乎不完整时,请尝试go mod graph
完整的依赖图。