這篇文章主要介紹了關(guān)于gomod模塊化,具有一定借鑒價(jià)值,需要的朋友可以參考下。下面就和我一起來看看gomod模塊化吧。
目前成都創(chuàng)新互聯(lián)公司已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)頁(yè)空間、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計(jì)、南豐網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。
很多語(yǔ)言有專門的工具或者庫(kù)來管理項(xiàng)目中的依賴包或第三方庫(kù),比如java有maven,javascript有npm。
但對(duì)于go 來說,v1.1之前是沒有內(nèi)置的go模塊工具的,項(xiàng)目文件需要放在GOPATH/src下來運(yùn)行,這樣的工作方式比較強(qiáng)制,可能會(huì)降低效率。
在v1.1之后,go提供了內(nèi)置的go mod工具,通過go mod我們可以愉快的進(jìn)行g(shù)o依賴包的管理和升級(jí)。
下面就來由go入門教程欄目來為大家介紹一下go mod。
go mod 常用命令
download download modules to local cache edit edit go.mod from tools or scripts graph print module requirement graph init initialize new module in current directory tidy add missing and remove unused modules vendor make vendored copy of dependencies verify verify dependencies have expected content why explain why packages or modules are needed
在新項(xiàng)目中配置go mod
在GOPATH外新建一個(gè)目錄,使用go mod init xxx來初始化go.mod文件。go.mod中提供了當(dāng)前項(xiàng)目的依賴庫(kù)的名字和版本
新建main.go,加入代碼
package main import "github.com/astaxie/beego" func main() { beego.Run() }
如果你使用的是vscode編輯器,go拓展會(huì)自動(dòng)對(duì)已打開文件中的依賴進(jìn)行下載或者你也可以運(yùn)行g(shù)o run main.go來下載依賴包。
此時(shí)go.mod中內(nèi)容已更新
module go-mod go 1.13 require github.com/astaxie/beego v1.12.0
同時(shí)項(xiàng)目中會(huì)生成go.sum文件,此文件記錄當(dāng)前依賴樹
對(duì)于golang.org下的依賴包可以通過replace來替換成github.com中的依賴包
beego項(xiàng)目使用go mod
通過bee工具生成的 beego項(xiàng)目時(shí)生成在GOPATH之下的,需要將beego項(xiàng)目移到GOPATH之外,生成go mod init xxx生成go.mod文件。
關(guān)于gomod模塊化的相關(guān)介紹就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的參考價(jià)值,可以學(xué)以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。