gopm
參考資料 http://www.reibang.com/p/a7c3aeb0948d
$GOPATH/src 目錄的曲線救國(guó)方式
go get -v -u github.com/gpmgo/gopm
- 在 $GOPATH/bin 下 會(huì)生成一個(gè)gopm工具
使用實(shí)例:
1.下載安裝swag 生成swagger文檔的工具
gopm get -g -v github.com/swaggo/swag/cmd/swag
cd $GOPATH/src/github.com/swaggo/swag/cmd/swag
go install
goproxy
參考資料 https://blog.csdn.net/ra681t58cjxsgckj31/article/details/82392870
$GOPATH/pkg 目錄的曲線救國(guó)方式
ubuntu
export GOPROXY=https://goproxy.io
windows
在系統(tǒng)環(huán)境變量中 增加 GOPROXY:https://goproxy.io
在path中增加 %GOPROXY%
gopm 與 goproxy 區(qū)別
gopm 是 go get 方式下載包失敗時(shí)使用
- go get 本身會(huì)把下載的包放在 $GOPATH/src下
- 經(jīng)過(guò) gopm ,gopm 會(huì)先從國(guó)內(nèi)鏡像服務(wù)器檀何,把保下載 在 gopm的緩存目錄陪蜻,然后經(jīng)過(guò)其他指令 再copy 到 $GOPATH/src 下
goproxy 是在 go modules 包管理模式下使用
- 在使用 go mod 等指令的時(shí)候 會(huì)經(jīng)過(guò) https://goproxy.io 代理 下載
golang 的 vsCode工具 未完成
ubuntu
已經(jīng)安裝
go get -u -v github.com/nsf/gocode
go get -v github.com/sqs/goreturns
go get -v github.com/ramya-rao-a/go-outline
go get -v golang.org/x/tools/cmd/gopls
go get -v github.com/uudashr/gopkgs/cmd/gopkgs
沒有安裝
go get -v github.com/newhook/go-symbols
文檔給的包列表
gocode
godef
golint
go-find-references
go-outline
go-symbols
guru
gorename
goreturns
gopkgs
一共10個(gè),嘗試自動(dòng)安裝顶考,成功了四個(gè)。
手動(dòng)安裝,目錄定位到$HOME/learn/go/bin下
go get -u -v github.com/nsf/gocode
go get -u -v github.com/rogpeppe/godef
go get -u -v github.com/golang/lint/golint
go get -u -v github.com/lukehoban/go-find-references
go get -u -v github.com/lukehoban/go-outline
go get -u -v sourcegraph.com/sqs/goreturns
go get -u -v golang.org/x/tools/cmd/gorename
go get -u -v github.com/tpng/gopkgs
go get -u -v github.com/newhook/go-symbols
go get -v -u github.com/peterh/liner github.com/derekparker/delve/cmd/dlv
Windows
已經(jīng)安裝
go get -v github.com/sqs/goreturns
go get -v github.com/ramya-rao-a/go-outline
go get -v golang.org/x/tools/cmd/gopls
go get -v github.com/uudashr/gopkgs/cmd/gopkgs
文檔給的包列表
go get -u -v github.com/nsf/gocode 代碼提示
github.com/mdempsky/gocode 是老版本
go get -u -v github.com/rogpeppe/godef
go get -u -v github.com/golang/lint/golint
go get -u -v github.com/ramya-rao-a/go-outline
github.com/lukehoban/go-outline 是老版本
go get -u -v sourcegraph.com/sqs/goreturns
go get -u -v golang.org/x/tools/cmd/gorename
go get -u -v github.com/tpng/gopkgs
go get -u -v github.com/newhook/go-symbols
go get -u -v golang.org/x/tools/cmd/guru
(以及dlv調(diào)試運(yùn)行工具)
這些內(nèi)容最終目的是要在gopath中bin文件夾中生成一些exe文件属韧。
但是碗淌,這里安裝時(shí)遇到了一些問題,有一些會(huì)安裝失敗,報(bào)錯(cuò)信息主要意思是說(shuō)無(wú)法鏈接啊譬挚,無(wú)法找到啊之類的祸轮。
直接用已經(jīng)生成的exe包,放在gopath的bin文件夾中就行了菠秒。
go get使用時(shí)的附加參數(shù)
附加參數(shù) | 描述 |
---|---|
-v | 顯示操作流程的日志及信息,方便檢查錯(cuò)誤 |
-u | 下載丟失的包,但不會(huì)更新已經(jīng)存在的包 |
-d | 只下載拯勉,不安裝 |
gopm get使用時(shí)的附加參數(shù)
附加參數(shù) | 描述 |
---|---|
-r | 僅下載當(dāng)前指定的包 |
-d | 拉取依賴到$GOPATH |
-g | 檢查更新所有包 |
-u | 拉取到當(dāng)前所在目錄 |
-l | 運(yùn)行當(dāng)前目錄程序 |
-v | 顯示進(jìn)程詳細(xì)信息 |
-s | 將依賴項(xiàng)保存到gopmfile |