Go語言依賴管理

2020-07-16 10:05:18
早期的Go語言被很多開發者所吐槽的一個問題就是沒有依賴包的管理,不過隨著版本的不斷更迭,Go語言依賴管理方面也在不斷的完善。

為什麼需要依賴管理

最初的時候Go語言所依賴的所有的第三方包都放在 GOPATH 目錄下面,這就導致了同一個包只能儲存一個版本的程式碼,如果不同的專案依賴同一個第三方的包的不同版本,應該怎麼解決呢?

godep

godep 是一個Go語言官方提供的通過 vender 模式來管理第三方依賴的工具,類似的還有由社群維護的準官方包管理工具 dep。

Go語言從 1.5 版本開始開始引入 vendor 模式,如果專案目錄下有 vendor 目錄,那麼Go語言編譯器會優先使用 vendor 內的包進行編譯、測試等。

安裝godep工具

我們可以通過go get 命令來獲取 godep 工具。

go get github.com/tools/godep

命令執行成功後會將 godep 工具的原始碼下載到 GOPATH 的 src 目錄下對應的資料夾中,同時還會在 GOPATH 的 bin 目錄下生成一個名為 godep.exe 的可執行檔案,如下圖所示。

獲取 godep 工具