這篇文章將為大家詳細(xì)講解有關(guān)Go語(yǔ)言包管理工具dep怎么用,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
創(chuàng)新互聯(lián)公司于2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元石首做網(wǎng)站,已為上家服務(wù),為石首各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18982081108什么是dep?
dep和go,在一定程度上相當(dāng)于maven之于Java,composer之于PHP,dep是go語(yǔ)言官方的一個(gè)包管理工具。
相比較go get而言,dep可以直接給引入的第三方包一個(gè)專門(mén)的目錄,并且可以專門(mén)制定一個(gè)配置文件,控制go項(xiàng)目所引入的包,版本以及其他依賴關(guān)系。
dep這個(gè)項(xiàng)目放在golang官方的github中:https://github.com/golang/dep
官方對(duì)于dep的解釋是:dep is the official experiment, but not yet the official tool. 也就是說(shuō),dep目前還處于試驗(yàn)階段,還并沒(méi)有成為一個(gè)官方意義上的工具。畢竟go語(yǔ)言還很年輕,但是這也充分的證明了go語(yǔ)言的生態(tài)圈十分豐富。
安裝
安裝dep工具的方式有很多種,如果是mac電腦的話,只需要如下命令:
brew install dep
對(duì)于Linux和類Unix系統(tǒng)而言,我們還可以使用如下方式安裝dep:
curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
或者直接使用源碼安裝。
而對(duì)于windows電腦,可能會(huì)相對(duì)來(lái)說(shuō)麻煩些,我們可以直接使用源碼編譯安裝或者直接使用go get命令安裝:
go get -u github.com/golang/dep/cmd/dep
待安裝完成之后,將dep.exe放在環(huán)境變量就可以使用了。
使用
接下來(lái)我們來(lái)看一下dep的使用方式。
當(dāng)安裝好dep之后,我們?cè)诿钚兄校斎雂ep就可以看到有關(guān)dep的命令了。
Dep is a tool for managing dependencies for Go projects Usage: "dep [command]" Commands: init Set up a new Go project, or migrate an existing one status Report the status of the project's dependencies ensure Ensure a dependency is safely vendored in the project version Show the dep version information Examples: dep init set up a new project dep ensure install the project's dependencies dep ensure -update update the locked versions of all dependencies dep ensure -add github.com/pkg/errors add a dependency to the project Use "dep help [command]" for more information about a command.
我們可以看出來(lái),dep一般進(jìn)場(chǎng)會(huì)使用3個(gè)命令:
init-用來(lái)初始化項(xiàng)目
status-用來(lái)查看當(dāng)前項(xiàng)目的依賴包的狀態(tài)
ensure-用來(lái)同步包的配置文件和引入的包
下面我們正式使用dep來(lái)創(chuàng)建一個(gè)項(xiàng)目。首先建立一個(gè)項(xiàng)目路徑,這里我們將項(xiàng)目路徑叫做depProject。然后在項(xiàng)目路徑中建立src源代碼目錄。在src中建立一個(gè)存放dep文件和項(xiàng)目主文件的目錄,我們暫且可以叫做depmain,并建立一個(gè)go文件。
這樣我們的目錄結(jié)構(gòu)如下:
depProject
|----src
|----depmain
|-----main.go
建立好之后,我們?cè)趍ain.go中寫(xiě)一個(gè)簡(jiǎn)單的go程序:
package main import ( "fmt" ) func main() { fmt.Println("hello) }
之后我們?cè)谶@個(gè)目錄下運(yùn)行如下命令:
dep init
運(yùn)行完成之后,dep就會(huì)為我們自動(dòng)生成如下文件和目錄:
有點(diǎn)像常規(guī)go項(xiàng)目的樣子了,不過(guò)需要注意的是pkg中存放的go語(yǔ)言引入包的緩存文件,vendor中存放的是真正的引入的包內(nèi)容。接下來(lái)是兩個(gè)文件,Gopkg.lock和Gopkg.toml。Gopkg.lock文件是自動(dòng)生成的,而Gopkg.toml文件是我們可以編輯的文件,通過(guò)編輯這個(gè)文件,并運(yùn)行dep的命令可以達(dá)到引入包的目的:
# 必需包 required = ["github.com/gin-gonic/gin"] # 忽略包 #ignored = []沒(méi)有可以不寫(xiě) # 項(xiàng)目元數(shù)據(jù) #[metadata] # 約束條件 [[constraint]] # name = # 可選:版本 # version = # 分支 # branch # 修訂 # revision # 可選:指定來(lái)源 # source = "github.com/gin-gonic/gin"
以上代碼是一個(gè)示例,我們寫(xiě)好之后運(yùn)行
dep ensure
就可以了,我們會(huì)看到vendor下多了一些有關(guān)此包的依賴和引入。
我們引入了gin框架的包,所以我們現(xiàn)在就可以使用gin框架了,寫(xiě)的時(shí)候,和我們平時(shí)的go語(yǔ)言項(xiàng)目一樣:
package main import "github.com/gin-gonic/gin" func main() { r := gin.Default() r.GET("/ping", func(c *gin.Context) { c.JSON(200, gin.H{ "message": "pong", }) }) r.Run() // listen and serve on 0.0.0.0:8080 }
這樣做完全沒(méi)有問(wèn)題,我們只用考慮這個(gè)包原本的路徑github.com/gin-gonic/gin就好。
接下來(lái)我們就可以編譯運(yùn)行這個(gè)項(xiàng)目了。
另外需要注意的是,使用dep管理包控制依賴的時(shí)候,如果我們需要新建目錄,并編寫(xiě)自己的新的包名的時(shí)候,只需要在src下新建目錄就可以了。這樣做才能正確引入。
比如:我們要編寫(xiě)一個(gè)add的函數(shù),我們可以這樣,在src下簡(jiǎn)歷一個(gè)utils目錄,下寫(xiě)個(gè)add.go文件:
package utils func Add(a int, b int) int { return a+b }
這樣在主程序中,這樣寫(xiě)就可以import自己寫(xiě)的包,并使用自己的函數(shù)了:
package main import ( "utils" "fmt" ) func main() { fmt.Println("hello") utils.Add(1, 1) }
關(guān)于“Go語(yǔ)言包管理工具dep怎么用”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
本文名稱:Go語(yǔ)言包管理工具dep怎么用-創(chuàng)新互聯(lián)
地址分享:http://m.newbst.com/article44/hcpee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、域名注冊(cè)、網(wǎng)站導(dǎo)航、網(wǎng)站制作、建站公司、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容