go mod 管理項目包

golang module 管理項目包

簡介

  • golang在1.11版本中引入了新的包管理工具 go mod。包管理一直是go語言的痛點。
  • 包管理的常見需求:項目依賴某個包的不一樣版本,依賴本地的(私有的)包等

用法

  • 我的推薦golang IDE:goland。上手快,功能強大,比idea快不少。這裏用的也是goland
  • 題外話:go mod的特性讓golang愈來愈適應工程管理的需求。解放了對$GOPATH的依賴。更加註重項目自己。
  • 進入正題:
  1. File --> New Project --> Go Module(vgo) 在location處選擇本身的項目路徑,路徑不必定須要是$GOPATH。按需勾選vendering。Create!

    clipboard.png

  2. 建立完以後項目名下邊有go.mod

    clipboard.png

  3. 如何在項目中定義本身須要的包,以configs包爲例。右鍵項目名,新建文件夾,名爲本身須要定義的包,此處示例爲configs。若是這個包是私有的,不放到公開的github上,main函數以 import "webproject/configs" 導入包

    clipboard.png

    clipboard.png

  4. 如何在項目中導入第三方的包,以gin包爲例。
    4.1 直接import無論用,報錯以下:

    clipboard.png
    4.2 根據提示 Alt + Shift + Enter鍵或點擊Sync packages。將須要的依賴寫入到go.mod當中。git

    clipboard.png
    4.3 相關的依賴順利寫入到go.mod。github

    clipboard.png

  5. 第四步中可能存在golang.org天朝網絡問題,能夠用 replace解決。我是直接用Proxifier解決。

總結

  • 總的來講,使用go mod進行依賴管理,仍是比較使人滿意的。以後再看須要,補充go mod tidy,導入其餘module包等情形。
相關文章
相關標籤/搜索