La variabile d'ambiente GOPATH elenca i luoghi in cui cercare il codice Go. Su Unix, il valore è una stringa separata da due punti. Su Windows, il valore è una stringa separata da punto e virgola. Nel piano 9, il valore è un elenco.
Se la variabile di ambiente non è impostata, GOPATH imposta automaticamente una sottodirectory denominata "go" nella home directory dell'utente ($ HOME / go su Unix,% USERPROFILE% \ go su Windows), a meno che quella directory non contenga una distribuzione Go. Esegui "go env GOPATH" per vedere l'attuale GOPATH.
Vedi https://golang.org/wiki/SettingGOPATH per impostare un GOPATH personalizzato.
Ogni directory elencata in GOPATH deve avere una struttura prescritta:
La directory src contiene il codice sorgente. Il percorso sotto src determina il percorso di importazione o il nome dell'eseguibile.
La directory pkg contiene oggetti pacchetto installati. Come nella struttura Go, ogni sistema operativo di destinazione e coppia di architetture ha la propria sottodirectory di pkg (pkg / GOOS_GOARCH).
Se DIR è una directory elencata nella GOPATH, un pacchetto con sorgente in DIR / src / foo / bar può essere importato come "foo / bar" e ha il suo modulo compilato installato in "DIR / pkg / GOOS_GOARCH / foo / bar.a ".
La directory bin contiene comandi compilati. Ogni comando è chiamato per la sua directory di origine, ma solo l'elemento finale, non l'intero percorso. Cioè, il comando con sorgente in DIR / src / foo / quux è installato in DIR / bin / quux, non DIR / bin / foo / quux. Il prefisso "pippo /" viene rimosso in modo da poter aggiungere DIR / bin al PERCORSO per ottenere i comandi installati. Se la variabile di ambiente GOBIN è impostata, i comandi vengono installati nella directory che nomina invece di DIR / bin. GOBIN deve essere un percorso assoluto.
Ecco un esempio di layout di directory:
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 è stato impostato su Base Project DIR e presenta ancora questo problema, in Windows puoi provare a impostare GOBIN come Base Project DIR\bin
o %GOPATH%\bin
.
$GOPATH/bin
directory. Era necessario creare questa cartella, non avevo bisogno di impostareGOBIN
env var.