2016-02-23 2 views
1

Мне нужно импортировать внешний пакет из github «github.com/xy/packageX» в MyProject/src/myProjcet.go. Поэтому я добавил импорт «github.com/xy/packageX» на номер myProject.go. Если я бегу идут сборки, я получаю:Go, как импортировать пакет из github и строить без go get

myProject.go:9:2: import “github.com/xy/packageX”: cannot find package 

Так что я должен работать go get, а затем go build.
Есть ли способ, как его можно построить без использования go get? Или я должен загрузить его на MyProject/pkg и добавил эту ссылку на myProject.go? Я на Xubuntu 14.04.

+3

Почему вы не хотите использовать «иди»? –

ответ

0

Если ваш проект соответствует репозиторию, например github, Когда начальная «go install» будет «go get» даже в качестве пакетаX.

3

Если вы не хотите добавлять зависимую от проекта зависимость от глобального GOPATH, вы можете ее продать. (см. «Рекомендуемый вариант»: см. «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 

Примечание: что репо может иметь сам другие зависимости, что вам нужно будет добавить аналогичным образом (в той же папке поставщика)

Смежные вопросы