Golang 官方在 1.11 版推出了 Go modules,讓開發者透過 go mod 來管理 project 或 package 中所使用的套件。
Init
假設今天需要建立一個 RESTful 專案,內容如下:
|
|
main.go
|
|
可以看到這裡有使用 Gin 這個套件,接下來透過 go mod 來添加這個套件,首先需初始 go modules:
|
|
完成後會產生一個 modules 設定檔 go.mod,接下來當你執行 build、run、test 等命令,modules 會自動幫你加入相依套件,當然你還是可以透過 get 來取得套件,下方是這次 go.mod 的內容:
|
|
Golang 提供一個環境變數 GO111MODULE 來控制是否啟用 go modules
Get
可使用以下方法來取得或更新相依套件:
|
|
|
|
如果有使用到私有套件,需要在 go 環境變數 GOPRIVATE 加入你的私有套件網域名,另外,你會需要透過登入或SSH來取得私有套件的權限。例設一個 private gitlab 套件,gitlab.com/name/repo,設定如下:
|
|
List
列出目前使用到的相依套件:
|
|
Clean
清除未使用的套件,執行前最好先清除暫存。
go clean
go mod tidy