本文作者:陳進堅
個人博客:https://jian1098.github.io
CSDN博客:https://blog.csdn.net/c_jian
簡書:https://www.jianshu.com/u/8ba9ac5706b6
聯繫方式:[email protected]
模塊是相關Go包的集合。modules是源代碼交換和版本控制的單元。 go命令直接支持使用modules,包括記錄和解析對其他模塊的依賴性。modules替換舊的基於GOPATH的方法來指定在給定構建中使用哪些源文件。
注意:開啓go module
需要go1.11
及以上版本
打開模塊
set GO111MODULE=on //windows
export GO111MODULE=on //linux
初始化
執行下面的命令生成go.mod
文件
go mod init 項目名
執行下面的命令創建vendor
目錄存放並下載依賴
go mod vendor
執行完成會生成go.sum
文件來記錄所依賴的項目的版本的鎖定
然後在需要使用包的文件中正常import
即可
引入新的包
在需要使用包的文件中import
,然後再次執行下面的命令即可
go mod vendor
依賴包整理
執行下面的命令可以將沒用到的依賴包清除
go mod tidy
其他命令
go mod 有以下命令:
命令 | 說明 |
---|---|
download | download modules to local cache(下載依賴包) |
edit | edit go.mod from tools or scripts(編輯go.mod |
graph | print module requirement graph (打印模塊依賴圖) |
init | initialize new module in current directory(在當前目錄初始化mod) |
tidy | add missing and remove unused modules(拉取缺少的模塊,移除不用的模塊) |
vendor | make vendored copy of dependencies(將依賴複製到vendor下) |
verify | verify dependencies have expected content (驗證依賴是否正確) |
why | explain why packages or modules are needed(解釋爲什麼需要依賴) |