A variável de ambiente GOPATH lista lugares para procurar o código Go. No Unix, o valor é uma sequência separada por dois pontos. No Windows, o valor é uma sequência separada por ponto e vírgula. No plano 9, o valor é uma lista.
Se a variável de ambiente não estiver definida, o GOPATH assumirá como padrão o subdiretório denominado "go" no diretório inicial do usuário ($ HOME / vá no Unix,% USERPROFILE% \ go no Windows), a menos que esse diretório possua uma distribuição Go. Execute "go env GOPATH" para ver o GOPATH atual.
Consulte https://golang.org/wiki/SettingGOPATH para definir um GOPATH personalizado.
Cada diretório listado em GOPATH deve ter uma estrutura prescrita:
O diretório src contém o código fonte. O caminho abaixo de src determina o caminho de importação ou o nome do executável.
O diretório pkg contém objetos de pacote instalados. Como na árvore Go, cada par de sistema operacional e arquitetura de destino possui seu próprio subdiretório pkg (pkg / GOOS_GOARCH).
Se DIR for um diretório listado no GOPATH, um pacote com origem em DIR / src / foo / bar poderá ser importado como "foo / bar" e terá seu formato compilado instalado em "DIR / pkg / GOOS_GOARCH / foo / bar.a "
O diretório bin contém comandos compilados. Cada comando é nomeado para seu diretório de origem, mas apenas o elemento final, não o caminho inteiro. Ou seja, o comando com origem no DIR / src / foo / quux é instalado no DIR / bin / quux, não no DIR / bin / foo / quux. O prefixo "foo /" é removido para que você possa adicionar DIR / bin ao seu PATH para obter os comandos instalados. Se a variável de ambiente GOBIN estiver configurada, os comandos serão instalados no diretório que ele nomeia, em vez de DIR / bin. GOBIN deve ser um caminho absoluto.
Aqui está um exemplo de layout de diretório:
GOPATH=/home/user/go
/home/user/go/
src/
foo/
bar/ (go code in package bar)
x.go
quux/ (go code in package main)
y.go
bin/
quux (installed command)
pkg/
linux_amd64/
foo/
bar.a (installed package object)
..........
se GOPATH tiver sido definido como Projeto Base DIR e ainda tiver esse problema, no Windows você pode tentar definir GOBIN como Base Project DIR\binou %GOPATH%\bin.
$GOPATH/bindiretório. Criar essa pasta era o necessário - eu não precisava definirGOBINenv var.