相信大家在本地使用go mod开发项目时, 肯定会遇到很多依赖包的问题。因为go mod在最近的1.13中使用了Go GO111MODULE
·
模块进行包管理。
设置Go GO111MODULE
有的小伙伴使用过程中肯定非常痛苦,因为不是很熟练, 而且里面还有很多不人性化的设置,网上的资料甚少,都是一篇文章你抄我,我抄你, 查阅大量文章之后无果,一怒之下我决定好好研究一下go mod
。
遇到的问题
在本地下我有logCollect
与logCollect/logBeegoWeb
两个go modules
模块, 那么我该如何在当前项目中加载另一个本地正在开发的模块呢?
问题解决
logBeegoWeb/go.mod
这里我go.mod里导入了很多包, 为了不影响观看体验, 所以这里就暂时没有写进去
1 | module logBeegoWeb |
名词解释
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: lock@v0.0.0: parsing ..\..\lock\go.mod: open E:\Go\Gopath\src\demoCode\lock\go.mod: The system cannot find the file specified.
在Go Modules
查看, 导入本地项目成功!