2013-09-07 8 views

risposta

2

Sì, è possibile avere più progetti nell'area di lavoro. Tuttavia, non si specifica più GOPATH s per quello. È sufficiente creare i due progetti all'interno dell'ambiente GOPATH. E per compilare, eseguire ecc. Basta specificare il punto di ingresso che si desidera utilizzare.

E.g.

go run src/proj1/proj1.go 
go run src/proj2/proj2.go 

Per ulteriori informazioni su GOPATH e aree di lavoro, vedere the godoc on workspaces.

In particolare, "src contiene i file di origine Go organizzati in pacchetti (un pacchetto per directory),". Si noti che non si è limitati a un solo pacchetto principale.

+2

quindi è lo spazio di lavoro/src/(proj1src, proj2src ecc.), Lo spazio di lavoro/pkg/(proj1pkg, proj2pkg ecc.) E così via? C'è un modo per fare workspace/proj1/(src, pkg, bin)? – tldr

+0

Allora sarebbe uno spazio di lavoro separato (e GOPATH). – Kissaki

+3

Cosa fai se hai due progetti e devono essere in due diversi repository Github? Dove inizi il progetto git? – NateW

0

È possibile utilizzare un unico spazio di lavoro ma se si desidera lavorare con un altro progetto fuori dallo spazio di lavoro, è necessario controllare le importazioni. Perché quando si importano pacchetti golang

import "fmt" 

E searchs pacchetto "fmt" su GOROOT o altri pacchetti che è ottenere via

go get github.com/package 

Si mette pacchetto sotto %workspace(GOPATH)%\src\github.com. Non mette pacchetto sotto il tuo progetto. Così si può clonare progetti 3rd party sotto la cartella del progetto e impostare le importazioni come relativa notazione del percorso:

import "./github.com/package" 

quindi eseguire il file GO. Funziona.

Problemi correlati