go?mod文件內(nèi)容版本號簡單用法詳解
go版本
本文go版本是1.14,開啟 GO111MODULE="on"
經(jīng)常在go.mod
里面看到引入第三方庫的版本號:
module test go 1.14 require github.com/jinzhu/copier v0.3.5 // indirect
可以看到copier
版本使用的是v0.3.5
的版本。
現(xiàn)在做個實驗,在go.mod
里面寫上上面的代碼【是手動寫入,沒有下載】
我們假定main.go
內(nèi)容如下:
package main import "fmt" func main() { fmt.Println("test") }
里面沒有使用到copier
的庫,我們先run
一下
可以看到代碼正常運行,但是它并沒有下載這個依賴包。
現(xiàn)在改一下main.go
的代碼,如下:
package main import ( "fmt" "github.com/jinzhu/copier" ) type User struct { Name string Age int QQ string } type Employee struct { Name string Age int Role string } func main() { user := User{Name: "dj999", Age: 18, QQ: "8888"} employee := Employee{Role: "xxx"} copier.Copy(&employee, &user) fmt.Printf("%#v\n", employee) }
直接運行go run main.go
可以看到它自動下載這個庫的指定版本了(go: downloading github.com/jinzhu/copier v0.3.5),并且代碼運行成功。
這個時候在pkg\mod\github.com\jinzhu
下也有這個擴(kuò)展庫的文件夾了
我們換一個場景:把go.mod內(nèi)容改一下:
module yif go 1.14 require github.com/jinzhu/copier v0.3.4 // indirect
就是把版本號改為v0.3.4
,其他不變,run
一下
發(fā)現(xiàn)它下載了v0.3.4的版本了,再來看看pkg\mod\github.com\jinzhu
目錄:
發(fā)現(xiàn)兩個都存在了。
所以go.mod
的一個功能就是指定特定版本,讓項目組每個開發(fā)者使用同一個版本號進(jìn)行開發(fā)
以上就是go mod文件內(nèi)容版本號簡單用法詳解的詳細(xì)內(nèi)容,更多關(guān)于go mod文件內(nèi)容版本號用法的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Golang遠(yuǎn)程調(diào)用框架RPC的具體使用
Remote Procedure Call (RPC) 是一種使用TCP協(xié)議從另一個系統(tǒng)調(diào)用應(yīng)用程序功能執(zhí)行的方法。Go有原生支持RPC服務(wù)器實現(xiàn),本文通過簡單實例介紹RPC的實現(xiàn)過程2022-12-12Golang標(biāo)準(zhǔn)庫container/list的用法圖文詳解
提到單向鏈表,大家應(yīng)該是比較熟悉的了,這篇文章主要為大家詳細(xì)介紹了Golang標(biāo)準(zhǔn)庫container/list的用法相關(guān)知識,感興趣的小伙伴可以了解下2024-01-01Go語言題解LeetCode1266訪問所有點的最小時間示例
這篇文章主要為大家介紹了Go語言題解LeetCode1266訪問所有點的最小時間示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-01-01