2016-06-10 6 views
5

sto correndo seguente comando:Non è possibile installare il pacchetto veterinario con andare a prendere

$ go get -u golang.org/x/tools/cmd/vet 

pacchetto golang.org/x/tools/cmd/vet: non riesce a trovare pacchetto "golang.org/x/ tools/cmd/vet "in uno dei seguenti: C: \ Sviluppo \ Software \ go \ src \ golang.org \ x \ tools \ cmd \ vet (da $ GOROOT)
C: \ Sviluppo \ Software \ go \ download_packages \ src \ golang.org \ x \ tools \ cmd \ vet (da $ GOPATH)

Non riesco davvero a capire come cannot find package abbia senso con get. Dovrebbe ottenere il pacchetto da internet. Perché lo cerca localmente?

+1

Ha scaricato il repo e il comando vet non esisteva localmente nel codebase. Lo strumento 'vet' è incluso nella distribuzione di go come default. – JimB

+0

@JimB Se è incluso per impostazione predefinita, suppongo che dovrebbe trovarlo in 'GOROOT'? –

+0

No, perché la sorgente in GOROOT ha un percorso diverso. ('$ GOROOT/src/cmd/vet'), ma dovrebbe essere già creato. – JimB

risposta

8

@JimB lo ha riassunto nei commenti - non è necessario installare go vet separatamente.

Ma solo per la completezza, la risposta diretta alla domanda OP è che il codice per il comando go vet non vive più a golang.org/x/tools/cmd/vet (vedi https://golang.org/doc/go1.2#go_tools_godoc - e dal momento che il codice si è spostato a GitHub).

Così, quando si esegue: go get -u golang.org/x/tools/cmd/vet sembra che sia git clonazione il pacchetto golang.org/x/tools/cmd e poi cercando di compilare golang.org/x/tools/cmd/vet che si traduce in un errore ("non riesce a trovare il pacchetto ...") perché la parte "vet" doesn' Esiste - è uscito qualche tempo fa. (go get prima scarica/clona il codice e poi tenta di compilare il pacchetto sul tuo sistema locale.)

E tutto questo vuol dire che probabilmente hai già go vet - prova a digitare "vai vet -h" e se funziona (dovresti vedere qualcosa come: "usage: vet ..."), sei pronto.

Problemi correlati