使用 gomod 多项目怎么分开库版本呢?

来源:5-3 go mod的使用

Inuyasha__

2021-11-04 20:58:49

老师说到 gopath 比较麻烦,要创建一个固定格式的文件夹,还要手动指定 gopath 路径,这个确实麻烦,我也认可,而且针对不同环境,可能还需要作不同配置。而且这种方式不支持一个 repo 下面很多 project 要用不同版本的情况。

因此后来出了 govendor 可以支持多个版本的情况,我个人感觉这个和 npm install 产生的文件 modules 有异曲同工之妙,但是一个不同的是 vendor 文件需要自己手动转移,当然也有很多库可以帮忙做这个事

后面说到 gomod ,课程中说了很多他很好,但是我体会好像不深,也似乎没有提到用这种方式怎么解决一个 repo 下多个 project 需要不同版本的库的问题?

写回答

1回答

ccmouse

2021-11-08

一个repo下多个project,只需要为每个project建立一个go.mod文件即可。它们可以各自引用自己所需要的依赖及其版本。

我在本节视频中展示了一个project先后用到同一个依赖的不同版本,它们都会被拉到本机的缓存位置中,(可以使用go env GOMODCACHE查看)。多个project同时用不同版本也一样,会在GOMODCACHE中统一拉取多个版本的代码,供不同project使用。

0

0 学习 · 1399 问题

查看课程