我需要将外部包从github“int a = 0;
int b = 0;
scanf("%d", &a);
skip_line_cool_function();
scanf("%d", &b);
printf("You have just entered: &d and &d", a, b);
”导入github.com/xy/packageX
。所以我将导入“MyProject/src/myProjcet.go
”添加到github.com/xy/packageX
。如果我运行go build,我会得到:
myProject.go
所以我必须运行myProject.go:9:2: import “github.com/xy/packageX”: cannot find package
,然后运行go get
有没有办法,如何在不使用go build
的情况下构建它?或者我应该将其下载到go get
并将此链接添加到MyProject/pkg
?我在Xubuntu 14.04上。
答案 0 :(得分:3)
如果您不想将您的项目依赖项添加到全局GOPATH,您可以提供它。 (建议使用1.6+:参见" Vendor Directories")
转到使用该导入的包,并将其作为子模块添加到供应商子文件夹中。
cd GOPATH/src/myproject/mypackage
git submodule add -- https://github.com/<user>/<repo> vendor/github.com/<user>/<repo>
cd vendor/github.com/<user>/<repo>
go install
cd ../../../..
go install
注意:repo可能有自己的其他依赖项,您需要以类似的方式添加(在同一供应商文件夹中)
答案 1 :(得分:0)
如果您的项目由存储库决定,例如github, 当最初的“go install”将是“go get”,即使是packageX。