我到處都讀到我GOPATH必須設(shè)置到我的工作區(qū)。如果我這樣做并使用go get從 GitHub 等獲取包,它們都會(huì)被添加到我的工作區(qū),但我發(fā)現(xiàn)這不是特別有用,因?yàn)樗刮业墓ぷ鲄^(qū)變得混亂。在我的工作區(qū)中,我希望只找到我的代碼和我的代碼。所以我現(xiàn)在有自己的回購協(xié)議~/repos/go并讓我GOPATH成為默認(rèn)的~/go。這很完美。我導(dǎo)入的所有庫都位于 中~/go,這讓我自己的工作場所保持~/repos/go整潔。這對我來說非常有用,所以我不確定為什么這不是推薦的工作方式。我錯(cuò)過了什么嗎?有沒有我破壞的東西或者功能不能以這種方式工作?我知道GOPATH是做什么的(在使用 go get 時(shí)定義一個(gè)放置包的地方和一個(gè)從中導(dǎo)入包的地方),但我不知道為什么你需要在與您自己的代碼相同的地方。事實(shí)證明不需要它,正如@peterSO 在我在下面接受的(優(yōu)秀)答案中所解釋的那樣。
2 回答

慕桂英546537
TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超10個(gè)贊
go help gopath
Go 搜索 GOPATH 中列出的每個(gè)目錄以查找源代碼,但新包總是下載到列表中的第一個(gè)目錄。
$GOPATH
是一個(gè)目錄列表。例如,在 Linux 上,
export GOPATH=$HOME/gopublic:$HOME/goprivate
go get
將所有下載放在列表的第一個(gè)目錄中:$HOME/gopublic
. 將所有包放在列表的第二個(gè)目錄中:$HOME/goprivate
.

呼啦一陣風(fēng)
TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超6個(gè)贊
GOPATH
是 golang 工具鏈在您嘗試編譯代碼時(shí)查看的默認(rèn)目錄。設(shè)置自定義的在技術(shù)上并不是100% 必要的,好像我沒有記錯(cuò),它默認(rèn)為~/go/
.
正如 peterSO 上面所說,GOPATH
是一個(gè)列表并將包放入第一個(gè)條目中。
- 2 回答
- 0 關(guān)注
- 158 瀏覽
添加回答
舉報(bào)
0/150
提交
取消