在本地目錄中安裝軟件包(使用go get...
)的最佳做法是什麼?golang:將軟件包安裝在本地目錄中
例如:我想嘗試Revel網絡框架,但我不想讓我的安裝在/usr/local/go
混亂。
通常我會說sudo go get github.com/robfig/revel
寫在主頁上,但它會安裝在/usr/local/go/src/pkg/...
下面。
有沒有簡單的方法來說(例如)go get --local ...
並且在當前(子)目錄中有包?
在本地目錄中安裝軟件包(使用go get...
)的最佳做法是什麼?golang:將軟件包安裝在本地目錄中
例如:我想嘗試Revel網絡框架,但我不想讓我的安裝在/usr/local/go
混亂。
通常我會說sudo go get github.com/robfig/revel
寫在主頁上,但它會安裝在/usr/local/go/src/pkg/...
下面。
有沒有簡單的方法來說(例如)go get --local ...
並且在當前(子)目錄中有包?
您可以導出env變量GOPATH
。對我而言,它是。這個文件夾有子文件夾bin
,pkg
和src
,所以它就像/usr/local/go
。然後go
-tool會自動下載,編譯和安裝軟件包到這個目錄中。
要擴大keks回答,您可以更新你的.bashrc,看起來像這樣
export GOROOT=/usr/local/go
export GOPATH=~/workspace/me/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
現在用go get
安裝了所有的包都是從去分配分開。
您可能要考慮使用Go Version Manager (gvm)。
除了輕鬆切換Go版本之外,它還允許您在pkgsets(「workspaces」)之間切換。
首先你創建一組
gvm pkgset create myproject
,然後你使用它
gvm pkgset use myproject
就像一個魅力。
很難選擇接受哪個答案。目前我只用'GOPATH'玩過,所以@ keks的答案是我選擇的答案,但這可能會在未來發生變化:) – topskip