Kan $GOPATH niet instellen op Mac OSX

Ik probeer mijn $GOPATHvariabele in te stellen om een ​​voorbeeldcode op mijn computer uit te voeren:

$ smitego-example go run main.go 
main.go:5:2: cannot find package "github.com/#GITHUB_USERNAME#/smitego" in any of:
    /usr/local/go/src/pkg/github.com/#GITHUB_USERNAME#/smitego (from $GOROOT)
    ($GOPATH not set)
$ smitego-example export $GOPATH=$HOME
-bash: export: `=/Users/#OSX_USERNAME#': not a valid identifier

voer hier de afbeeldingsbeschrijving in

Inhoud van github.com/#GITHUB_USERNAME#/smitego/smitego.go:

package smitego

Hoe kan ik mijn GOPATHzo instellen dat het altijd en voor altijd werkt?


Antwoord 1, autoriteit 100%

Update, vanaf Go 1.8: als je Go 1.8 (uitgebracht: februari 2017) of later installeert, is GOPATH automatisch bepaalddoor de Go-toolchain voor u.

Het is standaard $HOME/goop macOS (nee OS X) – b.v. /Users/matt/go/. Dit maakt het nog gemakkelijker om met Go aan de slag te gaan, en je kunt go get <package>gaan halen direct nadat je Go hebt geïnstalleerd.


Voor de shell:(de handmatige methode)

~/.bash_profile moet export GOPATH=$HOME/gobevatten en ook export PATH=$GOPATH/bin:$PATH. Het gebruik van de $is belangrijk: noteer waar ik het heb gebruikt (en waar niet).

Voor sublieme tekst:

Subliem tekstmenu > Voorkeuren > Pakketinstellingen > GoSublime > Instellingen: Gebruiker

{
        "shell": ["/bin/bash"],
        "env": {"GOPATH": "/Users/#USERNAME#/go/"},
}

Zorg ervoor dat uw GOPATHniet is ingesteld op het volledige pad van het pakket; alleen de root van je go-map waar src, pkg, and binzich bevinden. Als je GoSublimeniet gebruikt, raad ik je aan dat eerst te installeren.


Antwoord 2, autoriteit 27%

Het geaccepteerde antwoord werkte niet voor mij. Ik heb de oorzaak onderzocht en gevonden: ik gebruik zsh, niet bash.

Ik moet de volgende twee regels toevoegen aan ~/.zshrc:

export GOPATH=/Users/username/go
export PATH=$GOPATH/bin:$PATH

Antwoord 3, autoriteit 12%

U plaatst het voorvoegsel $niet op een variabele wanneer u deze toewijst, alleen wanneer u deze leest.

export GOPATH=$HOME

Om dit permanent te maken, plaatst u de opdracht in uw .bash_profile.

Dat werkt voor Terminal-shells. Als u omgevingsvariabelen moet instellen die van invloed zijn op GUI-toepassingen, raadpleegt u Omgevingsvariabelen in Mac OS X


Antwoord 4, autoriteit 9%

1) Download en installeer Go-tools
https://golang.org/doc/install

2) Go-werkruimte instellen

mkdir $HOME/go
cd $HOME/go
mkdir bin pkg src

3) Go-omgeving instellen

sudo vi ~/.bash_profile
export GOPATH=$HOME/go
PATH=$PATH:$GOPATH/bin

Testen door een Go-project te maken, te bouwen en uit te voeren

mkdir $GOPATH/src/github.com/todsul/hello
touch $GOPATH/src/github.com/todsul/hello/hello.go
go install
hello

Antwoord 5, autoriteit 3%

De http://www.golang-book.com/guides/machine_setup#osx

heeft alleen instructies voor het instellen van het pad op ~/.bashrc, niet ~/.bash_profiledie dankzij deze thread mijn voorbeeldbestand kon laten bouwen.

export GOPATH=$HOME
export PATH=$PATH:$GOPATH/bin

Andere Mac-gebruikers moeten het bovenstaande toevoegen aan hun ~/.bash_profile.


Antwoord 6, autoriteit 2%

Na installatie go with brew of with package loste dit mijn probleem op:

export GOROOT="/usr/local/go"
export GOPATH="$HOME/Documents/goWorkSpace"
export PATH="$HOME/Documents/goWorkSpace/bin:$PATH"

Antwoord 7

op macOS High Sierra versie 10.3.3, Go[go version go1.10.1 darwin/amd64] hier geïnstalleerd:

Ga naar installatielocatie

Volgende toegevoegd op:~/.bashrc

export GOPATH=/usr/local/go
export PATH=$PATH:$GOPATH/bin

en dan gaan werken

Go Works


Antwoord 8

Mensen die werken met de nieuwste Macs en hoger Catalina-versie,
jullie moeten het .zshrc-bestand bijwerken in plaats van .bash.

Voeg de volgende twee regels toe aan ~/.zshrc:

GOPATH=/Users/gebruikersnaam/go exporteren

PATH=$GOPATH/bin:$PATH exporteren

het zou moeten werken.!!

Dit is een tijdje geleden veranderd. Raadpleeg de onderstaande link om te begrijpen waarom .zshrc en niet .bash_profile
https:/ /eshop.macsales.com/blog/56921-moving-from-bash-to-zsh-terminal-changes-in-macos-catalina/

Other episodes