自动导入3rd Party Go软件包

时间:2018-10-23 00:31:05

标签: go goland

我是GO lang的新手,想知道是否可以自动下载所有导入文件。 因此,假设我需要在代码库中使用github.com/gorilla/mux和其他几个软件包。我应该手动进入~/go/src并运行go get repo还是有一种更聪明的方式进行依赖项管理。我正在使用Goland IDE进行开发。任何帮助表示赞赏。

3 个答案:

答案 0 :(得分:5)

  

是否可以自动下载所有导入内容

您可以通过从命令行运行go get下载所有导入的pkg及其依赖项。

  

我正在使用Goland IDE进行开发

我也在使用Goland。如果找不到导入(即,导入路径以红色突出显示),则可以将键入的插入符号置于其上,然后按alt + enter,然后从弹出窗口中选择go get ...以自动导入。

答案 1 :(得分:1)

有几种方法:

  • 只需go get github.com/gorilla/mux,它就会下载$GOPATH中的源代码,并且在编译时会自动解决
  • 使用依赖项管理(godep,glide [不建议使用])
  • 使用模块(Go 1.11中的实验功能-模块。Check more here

如果您想要一个好的,稳定的解决方案,请使用dep(。首先必须安装它,然后运行:

cd $GOPATH/src/path/to/project
dep init
dep ensure -add github.com/gorilla/mux

您将在项目中看到一个新文件夹vendor以及2个新的依赖项配置文件Gopkg.lockGopkg.toml。 进一步了解Godep here

然后照常运行主文件。

答案 2 :(得分:0)

您可以使用dep程序包管理器,它会检查您的代码并自动导入您在代码中使用的所有程序包。如果您使用的是> go1.11,则建议使用新添加的go mod