使用 Golang 的 Iris web 框架時,用 go get github.com/kataras/iris 命令久久無法下載,最后還報一堆錯誤。
使用 GOPROXY 可解決問題,也可參考如下地址:https://goproxy.io
我使用的是 Win10系統,所以下面的演示以Windows 系統為例。
我的 GOPATH 目錄是在 D:\GOPATH 目錄(此目錄包含 src、pkg、bin目錄,這三個目錄要手動創建)。
項目在 GOPROJECT 目錄中,如下圖
1.打開CMD命令提示框,設置臨時環境變量
set GO111MODULE=on
set GOPROXY=https://goproxy.io
注意 https://goproxy.io 也可替換成阿里雲的 https://mirrors.aliyun.com/goproxy
2.再次執行 go get github.com/kataras/iris 也可以加 -v -u ,如下
go get -v -u github.com/kataras/iris
這時候就把所有的依賴都下載下來了。
值得注意的是,這些包並沒有下載到 GOPATH/src 目錄下,而是在 GOPATH/pkg/mod 目錄中
3.在 GOPROJECT 目錄下創建一個 MyTest 目錄,我稱這個目錄是 MyTest 項目
4.在 MyTest 目錄中創建 main.go 文件,內容如下:
package main import ( "github.com/kataras/iris" "github.com/kataras/iris/middleware/logger" "github.com/kataras/iris/middleware/recover" ) func main() { app := iris.New() app.Logger().SetLevel("debug") app.Use(recover.New()) app.Use(logger.New()) app.Get("/", func (ctx iris.Context){ ctx.HTML("Hello") }) app.Run(iris.Addr(":8080"), iris.WithoutServerError(iris.ErrServerClosed)) }
5.用CMD命令框進入到 D:\GOPROJECT\MyTest 目錄中
6.執行 go run main.go
此時打開瀏覽器輸入 localhost:8080 就可以訪問了。
值得一提的是:當再次打開一個新的CMD框或下次開機執行 go run main.go 前,一定要先執行
set GO111MODULE=on
set GOPROXY=https://goproxy.io
如果閑麻煩,可直接在環境變量中設定。
下一篇將講解 包管理Go module的使用。
提示:當你想把寫好的代碼發給同事看時,你不可能讓你同事再次下載依賴包,而是你將依賴包打包到項目的 vendor 目錄下一塊發給你的同事。