1. 程式人生 > 其它 >go語言(包管理)

go語言(包管理)

技術標籤:go

go語言(包管理)

Go語言通過包管理來封裝模組和複用程式碼,Go modules 是 Go 語言的依賴解決方案,這裡只介紹go model

1、 配置環境變數

  • 配置環境變數,使用go env命令檢視當前配置,如果需要更改 GO111MODULE ,可以使用go env命令
go env -w GO111MODULE=on
  • GO111MODULE是主要是 Go modules 的開關,其中引數auto指只在專案包含了 go.mod 檔案時啟用 Go modules,引數on指啟用 Go modules,引數off為禁用 Go modules。
  • GOPROXY,此環境變數主要用於設計Go Module的代理
  • GOSUMDB,此環境變數用於在拉取模組的時候保證模組版本資料的一致性。

2、 初始化模組

通過命令建立新的Model,目錄就會自動新建go.mod檔案

go mod init [module name]
//生成的新檔案
module mc

go 1.15

3、go get命令

go get命令用來拉取新的新的依賴

  • 執行go get -u,將會使用依賴包的最新版本。例如更新1.0.0到1.0.1或者1.1.0。
  • 執行go get -u=patch將會更新依賴包的版本到最新的修訂版本。例如更新1.0.0到1.0.1。
  • 執行go get [email protected]將會更新依賴包的版本到特定版本。

4、常見命令

go mod init  // 初始化go.mod
go mod tidy  // 更新依賴檔案
go mod download  // 下載依賴檔案
go mod vendor  // 將依賴轉移至本地的vendor檔案
go mod edit  // 手動修改依賴檔案
go mod graph  // 檢視現有的依賴結構
go mod verify  // 校驗依賴