天天看點

go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令

go mod的使用

一、介紹

  1. 是一種依賴版本管理方式
  2. 估計 go 之後的版本都是用 go mod 來管理了,gopath 模式會被淘汰
go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令
go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令

二、常用指令

2.1、go mod help

檢視幫助

go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令

2.2、go mod init<項目子產品名稱>

  1. 初始化子產品,會在項目根目錄下生成 go.mod 檔案。
  2. 這裡為了測試,我們先删掉go.mod 檔案
go mod init test

           
go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令

2.3、go get

  1. 增加(下載下傳)依賴
  2. 切換依賴版本

2.3.1、 增加(下載下傳)依賴

go get -u go.uber.org/zap
           
go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令
使用(新的項目)
package main

import "go.uber.org/zap"

func main() {
	logger, _ := zap.NewProduction()
	logger.Warn("測試錯誤消息")

}

           
go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令

當我們使用的時候,go-mod會發生變化

2.3.2、 切換版本

将 go.uber.org/zap v1.16.0 版本 改為 v1.12.0

go get -u go.uber.org/[email protected]
           

注意:@v1.12.0

go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令

2.4、go mod tidy

go mod tidy
           

根據 go.mod 檔案來處理依賴關系。

go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令
go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令

2.5、 go mod vendor

  1. 将依賴包複制到項目下的 vendor 目錄。
  2. 建議一些使用了被牆包的話可以這麼處理,友善使用者快速使用指令 go build -mod=vendor 編譯.

2.6、 go list -m all

顯示依賴關系。

go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令

2.7、 go list -m -json all

顯示詳細依賴關系。

go文法--基礎25--go mod的使用go mod的使用一、介紹二、常用指令

2.7、 go mod download

  1. 下載下傳依賴。
  2. 參數是非必寫的,path 是包的路徑,version 是包的版本。

繼續閱讀