相信大家在本地使用go mod開發項目時, 肯定會遇到很多依賴包的問題。因爲go mod在最近的1.13中使用了Go GO111MODULE
·
模塊進行包管理。
設置Go GO111MODULE
有的小夥伴使用過程中肯定非常痛苦,因爲不是很熟練, 而且裏面還有很多不人性化的設置,網上的資料甚少,都是一篇文章你抄我,我抄你, 查閱大量文章之後無果,一怒之下我決定好好研究一下go mod
。
遇到的問題
在本地下我有logCollect
與logCollect/logBeegoWeb
兩個go modules
模塊, 那麼我該如何在當前項目中加載另一個本地正在開發的模塊呢?
問題解決
logBeegoWeb/go.mod
這裏我go.mod裏導入了很多包, 爲了不影響觀看體驗, 所以這裏就暫時沒有寫進去
module logBeegoWeb
go 1.14
require (
logCollect v0.0.0
)
replace logCollect => E:\Go\Gopath\src\demoCode\logCollect
名詞解釋
logCollect v0.0.0
: logCollect是你要導入的包名稱, 後面是版本號, 因爲是本地開發,所以設置爲v0.0.0
replace logCollect => E:\Go\Gopath\src\demoCode\logCollect
這裏需要使用repalce
將logCollect
設置爲不從網上拉取, 而是加入本地路徑導入
想要導入本地項目, 只需要加入包名與版本號
和replace 本地地址
注意: 該方法是導入其他mod下的包, 如果導入的包沒有
go mod init
初始化
報錯找不到mod文件:go: [email protected]: parsing ..\..\lock\go.mod: open E:\Go\Gopath\src\demoCode\lock\go.mod: The system cannot find the file specified.
在Go Modules
查看, 導入本地項目成功!