将内部代码库从 dep 迁移到 go 模块时,会出现某些注意事项。本文深入探讨了使用 go 模块的期望和后果,特别是与私有存储库和 gopath 相关的期望和后果。
Go 模块和 Gopath
根据 Go对于项目架构师来说,“无点”路径(前面没有点)专门用于标准库。内部开发的依赖项不应使用此表示法。
一旦项目过渡到使用 go 模块,它必须完全拥抱模块系统。然后,gopath 在功能上与模块缓存相同。
模块和私有存储库的后果
这种到模块的转换需要通过私有存储库管理依赖项。因此,开发人员可能会面临以下后果:
您的关键假设
您认为 go 模块项目中的所有依赖项必须通过模块系统解决的假设是正确的。 gopath 仅用作下载模块的缓存。
问题:go 模块是全有还是全无?
是的,go 模块是全有或全无。一旦项目采用模块,所有依赖项都必须模块化。 gopath 仅保留其作为下载模块的缓存的意义。
从 Gopath 显式解决依赖关系
没有办法明确指示应该解决依赖关系来自 gopath。
其他见解
以上是Go 模块:从 GOPATH 的全有或全无过渡?的详细内容。更多信息请关注PHP中文网其他相关文章!