问题描述
我从 Github 克隆了一个项目,在开始工作之前,我必须安装 go.mod
文件中列出的所有依赖项。
我可以使用 go get
命令单独完成,但还有其他替代方法吗?
像 npm i
这样的东西,它会一次性安装所有必需的依赖项。
或者我在这里弄错了。
解决方法
go
命令会根据需要自动下载依赖项。
在包含 go.mod 的目录中执行命令 go mod download
以确保所有模块依赖项都下载到本地模块缓存中。
有关详细信息,请参阅 go mod download 文档。
,通常不需要手动下载 go.mod 文件中列出的软件包。 go 命令可以自动下载模块缓存中项目的所有直接和传递依赖项,然后在构建项目时使用这些下载的包。
npm 的工作方式不同,因为它将项目的所有直接和传递依赖项下载到项目本地的 node_modules 目录中。
如果你想在 Go 中使用 npm 之类的包管理,你能得到的最接近的是 Go 的 Vendoring 功能。
go mod vendor
命令在主模块的根目录中创建一个名为 vendor 的目录,其中包含支持主模块中包的构建和测试所需的所有包。
有关 Vendoring 的更多详细信息可在官方 Go docs 中获得。
,你可以试试这个命令
go list