Получение ошибки GOPATH "go: невозможно использовать синтаксис path @ version в режиме GOPATH" в Ubuntu 16.04 - PullRequest
0 голосов
/ 29 января 2019

Я не могу запустить go get git@github<user/repo> в моей папке $GOPATH.Получение этой ошибки:

go: невозможно использовать синтаксис path @ version в режиме GOPATH

Я просто хочу понять, почему go get не работает, хотя $GOPATH настраивается во время установки.Окружение убунту.

~/$ echo $GOPATH
/home/user/go

Ответы [ 3 ]

0 голосов
/ 22 мая 2019

У меня возникла та же проблема, и я решил установить конкретную переменную env export GO111MODULE=on в моем .zshrc (или .bashrc в зависимости от используемой вами оболочки) и перезапустить оболочку, чтобы включить модули.Вы можете найти более подробную информацию здесь: https://github.com/golang/go/wiki/Modules

0 голосов
/ 16 июля 2019

Я тоже встречался с этой проблемой.После некоторого поиска следующее работает с использованием go mod вместо go get, что является функцией модулей go:

$ export GO111MODULE=on

$ go mod init <project name>

// go mod init HelloWorld
// or
// go mod init .

$ go mod download repo@version

// go mod download github.com/robfig/cron/v3@v3.0.0
0 голосов
/ 29 января 2019

Как вы уже заметили, вы должны использовать go get github.com/<user>/<repo>.

Сообщение об ошибке, которое вы увидели, исходит от новой функции, реализованной в go get для поддержки Go модулей - теперь вы также можете указать версию зависимости: go get github.com/<user>/<repo>@<version>, где version является тегом git с использованием semver, например v1.0.2.

...