go開發 modules 的使用和代理
初學go語言,一堆 來自谷歌的包如
import (
"code.google.com/xxx"
)
不翻牆是很難下載下來的。
另外還有麻煩的 gopath 需要去管理。
但是自從go 1.1.1 開始,新增了 modules 工具,可以讓我們像開發 node 的時候,使用 npm 一樣的方便。
一、設置代理
linux設置如下:
export GOPROXY=http://xxxx
windows設置:
在環境變量里面,新增一欄名稱為:
GOPROXY:http://xxxx
其中,http://xxxx為代理的地址
常見的代理地址列表: 阿里: https://mirrors.aliyun.com/goproxy/ 官方: https://goproxy.io/ 中國:https://goproxy.cn 其他:https://gocenter.io golang 下載: https://gomirrors.org/ https://golang.google.cn/dl/
二、配置后查看
配置完成,輸入 go env 可以查看配置,注意windows需要重新打開 CMD。linux 需要更新配置
三、使用
在空文件夾下面,或者已經存在的項目下面。(可以不需要 build、bin、src 等文件)
執行初始:
go mod init xxxx //xxx為模塊導入路徑
再執行下面命令,會自動尋找依賴,加入
go mod tidy
四、go modules常用命令
go mod init:創建一個新模塊,初始化 go.mod 文件,參數為該模塊的導入路徑,推薦使用這種形式。如:go mod init github.com/linehk/example。 go get:更改依賴項版本(或添加新的依賴項)。 go build、go test 等命令:Go 命令行工具會根據需要添加新的依賴項。如:go test ./...,測試當前模塊。 go list -m all:打印當前模塊依賴。 go mod tidy:移除無用依賴。 go list -m -versions github.com/gin-gonic/gin:列出該模塊的所有版本。 go mod verify:驗證哈希。
五、在 beego框架中使用 modules
首先安裝 beego
go get -u github.com/astaxie/beego go get -u github.com/beego/bee
想要快速建立一個應用來檢測安裝?
linux
$ cd $GOPATH/src $ bee new hello $ cd hello $ bee run
windows
>cd %GOPATH%/src >bee new hello >cd hello >bee run
如果錯誤,可能是需要配置環境變量,windows下面,安裝完成,在 gopath -> bin下面有一個bee.exe文件,需要配置到 path的環境變量里面
此時在 GOPATH 的文件夾 src目錄下面,可以看見bee創建的項目
可以將整個項目拷貝出來,脫離 gopth使用。只需要在目錄執行:
go mod init hello go mod tidy