我在Go中創建了一個API,其中我已經通過「go get」安裝了兩個包,並創建了四個供我自己使用的包。一切似乎都很好。不過,我想移動包的位置,以便我可以擁有我的Git目錄中的所有內容。在非默認目錄中安裝Go包
從我讀過的內容來看,它應該像將GOPATH變量更改爲新目錄一樣簡單,然後再次運行「go get」來測試。它是否正確?如果是這樣,我是否做錯了什麼?以下是我在運行「go env」時在終端(Mac OS X)中顯示的內容。如果有其他信息會有用,請告訴我。謝謝。
GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread -fno-common"
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Applications/MAMP/htdocs/git/cbi/api"
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
CGO_ENABLED="1"
我要澄清,在默認情況我GOPATH是一個空字符串。我試着將它更新到上面的目錄中,因爲那是我希望安裝新軟件包的地方,也是爲了查找我創建的放置在那裏的任何軟件包。
我設置我的GOPATH變量通過運行: 出口GOPATH = 「/應用程序/ MAMP/htdocs中/的git/CBI/API」
這樣做後,我可以看到變量已經被設置時,我鍵入「go env」。但是,如果我退出終端然後再打開它,並再次運行「go env」,則GOPATH變量未設置。它有沒有保存的原因?我應該設置另一種方式,而不是出口?
當您嘗試從新位置創建/運行時會發生什麼? – 2013-02-20 21:24:23
你還沒有提供足夠的信息。當您使用不同的gopath時,您是否遇到問題需要幫助調試? – 2013-02-20 21:40:35
@RichChurcher只要包在我的GOROOT目錄中,我就可以構建並運行包含我的主函數的go文件。但是,如果我從那裏刪除它們並嘗試將它們放在我的api目錄下,則不會找到它們。當我嘗試使用pkg執行「go install」時,我得到:go install:沒有安裝位置用於_PACKAGE_PATH – user387049 2013-02-20 22:58:35