1. 程式人生 > >windows上GOROOT和GOPATH的設定

windows上GOROOT和GOPATH的設定

下載了go語言的安裝包, 然後安裝, 裝完了需要設定三個地方:

1. 在windows的PATH變數中新增go的可執行檔案所在的目錄:

PATH=C:\Go\bin;其他設定;

2. 設定 GOROOT , 這個好理解, 直接設定成 C:\Go 即可

GOROOT=C:\Go

3. 設定GOPATH, 這個很難理解, 我的嘗試:

GOPATH=    #就是等於空, 這個是可以在系統環境變數中設定的, 結果報錯go get 包的時候報錯說$GOPATH未設定
GOPATH=;   #就是等於一個分號(;), go get 包開始可以執行, 不報錯, 最後還是報錯, 說$GOPATH未設定
GOPATH=C:\Go 或者GOPATH=C:\Go;    #go get 包報錯, 說$GOPATH不能設定成和GOROOT一樣的

最後的解決方案是:

在C盤建立一個目錄叫做GOPATH, 然後設定GOPATH=C:\GOPATH,  

GOPATH=C:\GOPATH

go get 包可以使用了, 最後包會安裝到 C:\GOPATH\ 目錄的pkg和src資料夾裡, pkg裡是*.a格式的, 暫且理解為庫吧, src目錄裡是*.go格式的原始碼.

總結

實際上GOPATH, 可以是一個目錄的列表, 在windows環境變數裡設定的時候, 多個目錄使用分號(;)隔開, 在linux裡多個目錄使用冒號(:)隔開, 組合的一個字串.

GOPATH是一些列用於go來查詢包的目錄列表. 使用import "包名" 的時候, 如果在 GOROOT裡找不到, 應該會轉向到你的GOPATH裡去尋找.

不讓GOPATH和GOROOT環境變數的值設定為同一個目錄, 可能是因為不想你新安裝的包, 汙染了核心go的pkg和src檔案.

參考資料:

GOROOT 和 GOPATH: http://my.oschina.net/achun/blog/134002 

只推薦這一篇, 其他的都是狗屎.