Ich versuche eine zu installieren web.go
, aber läuft go get github.com/hoisie/web
zurück
package bufio: unrecognized import path "bufio"
package bytes: unrecognized import path "bytes"
package crypto/rand: unrecognized import path "crypto/rand"
package crypto/sha1: unrecognized import path "crypto/sha1"
package crypto/tls: unrecognized import path "crypto/tls"
package encoding/base64: unrecognized import path "encoding/base64"
package encoding/binary: unrecognized import path "encoding/binary"
package encoding/json: unrecognized import path "encoding/json"
package errors: unrecognized import path "errors"
package fmt: unrecognized import path "fmt"
und dies dauert eine Weile mit verschiedenen Paketen, bevor nichts anderes zurückgegeben wird. go env
gibt mir:
GOARCH="amd64"
GOBIN="/usr/local/go/bin"
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH=""
GORACE=""
GOROOT="/home/me/go"
GOTOOLDIR="/home/me/go/pkg/tool/linux_amd64"
TERM="dumb"
CC="gcc"
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread"
CXX="g++"
CGO_ENABLED="1"
Wie kann ich installieren web.go
? Verwenden go get
(anstatt go install
) finden Sie in der README-Datei auf der Github-Seite. Meine Go-Version ist go version go1.2 linux/amd64
.
Antworten:
Die Probleme beziehen sich auf eine ungültige
GOROOT
.Ich denke du hast Go in installiert
/usr/local/go
.Ändern Sie also Ihren
GOROOT
Pfad auf den Wert von/usr/local/go/bin
.Anscheinend wollten Sie Ihren Arbeitsbereich (GOPATH) unter haben
/home/me/go
.Dies könnte Ihr Problem beheben.
Fügen Sie dies am Ende Ihres Bash-Profils hinzu, das sich hier befindet =>
$HOME/.profile
Stellen Sie sicher, dass Sie die alten Referenzen von entfernen
GOROOT
.Versuchen Sie dann erneut, web.go zu installieren.
Wenn das nicht funktioniert, lassen Sie Ubuntu Go für Sie installieren.
sudo apt-get install golang
Video-Tutorial: http://www.youtube.com/watch?v=2PATwIfO5ag
quelle
go get
gibt den gleichen Fehler.GOROOT
ist auf eingestellt,/usr
wird selbst in / usr installiert, nicht in / usr / local. SetGOPATH
zu$HOME/go
. Irgendeine Idee, was noch zu überprüfen ist?GOROOT
scheint das Problem behoben zu haben.echo $GOROOT
dann überprüft, ob GO es noch in der Umgebung hat, ingo env
der es ausgeführt wurde, und an der Stelle,/usr/local/go
an der ich es installiert habe (daher muss es auf keinen Fall eingestellt werden)Ich habe Go with
brew
unter OSX 10.11 installiert und musste Folgendes einstellenGOROOT
:/usr/local/Cellar/go/1.5.1/libexec
(Ersetzen Sie natürlich die Version in diesem Pfad durch die Go-Version, die Sie haben.)
Brew verwendet Symlinks, die das Gotool zum Narren gehalten haben. Folgen Sie also den Links nach Hause.
quelle
Ich hatte genau das gleiche Problem, nachdem ich von der alten Go-Version (installiert von der alten PPA) zu neueren (1.2.1) Standardpaketen in Ubuntu 14.04 gewechselt war.
Der erste Schritt war das Löschen des vorhandenen Go:
Welche gibt folgende Warnungen aus:
Es sieht so aus, als ob beim Entfernen von go einige Dateien zurückbleiben, was wiederum die neuere Installation verwirren kann. Genauer gesagt, die Installation selbst wird einwandfrei abgeschlossen, aber danach gibt jeder go-Befehl wie "go get some" die Fehler "nicht erkannter Importpfad" aus.
Alles, was ich tun musste, war, zuerst diese Verzeichnisse zu entfernen, Golang neu zu installieren und alles funktioniert wie ein Zauber (vorausgesetzt, Sie setzen auch GOPATH).
quelle
/usr/local/go/
Weil GFW Ihnen den Zugriff auf golang.org verboten hat! Und wenn ich den Proxy benutze, kann es gut funktionieren.
Sie können die Informationen mit dem Befehl anzeigen
go get -v -u golang.org/x/oauth2
quelle
http://ping.eu/nslookup/
, um die richtige IP der Domain zu finden, setzen Sie diese in die Hosts-Datei und verwenden Sie dann einen Proxy zum Herunterladen.export http_proxy=127.0.0.1:1080 https_proxy=127.0.0.1:1080
Manchmal möchten Sie einfach das F-Wort an die Regierung sagen$ unset GOROOT
arbeitete für mich. Wie die meisten Antworten vermuten lassen, ist Ihr GOROOT ungültig.quelle
Ich hatte das gleiche Problem unter MacOS 10.10. Und ich fand, dass das Problem durch OhMyZsh Shell verursacht. Dann wechselte ich zurück zu Bash, alles ging in Ordnung.
Hier ist mein go env
quelle
go env
von wann es nicht funktioniert hat oder wann es funktioniert hat? Es war wahrscheinlich nicht "verursacht durch [andere Shell]", sondern es war wahrscheinlich ein Fehler,GOPATH
diese andere Shell korrekt einzustellen . Die Shells csh- und zsh-Familie verwenden nicht dieselben Startdateien (dh nein~/.profile
). Insbesonderezsh
verwendet$ZDOTDIR/.zshenv
und$ZDOTDIR/.zprofile
(wo$ZDOTDIR
standardmäßig$HOME
).Ich hatte das gleiche Problem, nachdem ich go1.2 auf go1.4 aktualisiert hatte.
Ich habe src in meinem GOPATH in _src umbenannt und dann a
go get -v
Es hat funktioniert, dann habe ich _src gelöscht.
Ich hoffe es hilft.
quelle
Bei der Installation eines anderen Pakets ist dieses Problem aufgetreten. Dies kann durch die Konfiguration von GOROOT und GOPATH auf Ihrem PATH verursacht werden. Ich neige dazu, GOROOT nicht einzustellen, weil meine OS X-Installation dies (glaube ich) für mich erledigt hat.
Stellen Sie Folgendes in Ihrem .profile sicher (oder wo immer Sie die Profilkonfiguration speichern: .bash_profile, .zshrc, .bashrc usw.):
Sie möchten wahrscheinlich
unset GOROOT
auch, falls dieser Pfad ebenfalls falsch ist.Stellen Sie außerdem sicher, dass Sie Ihren PFAD reinigen, ähnlich wie ich es unten getan habe, kurz vor der GOPATH-Zuweisung, dh:
Dann
source <.profile>
zu aktivierengo get
quelle
Die häufigsten Ursachen sind:
1. Ein falsch konfigurierter GOROOT
ODER
2. GOPATH ist nicht eingestellt
quelle