目录

Goland导入Docker项目源码

概述

Docker/Moby 项目源码如果按照 Go Mod 的方式导入 Goland,会有一堆 import 的错误,不仅依赖库没法索引,代码更是无法跳转,严重学习源码的效率。实际上,Docker/Moby 不是一个 Go Mod 的项目,依赖管理都是通过 vendor 来做的,所有的依赖都完整的放在 vendor 文件夹里,下面简答介绍一下正确的导入 Goland 的流程。

导入Goland

正确的导入 vendor 项目的流程可以参考下面的流程。

  1. 通过go env查看GOPATH
  2. git clone源码到GOPATH/src/github.com/docker/目录下
  3. 修改moby文件夹名做docker
/goland%E5%AF%BC%E5%85%A5docker%E9%A1%B9%E7%9B%AE%E6%BA%90%E7%A0%81/img.png

之后就可以看到 Goland 所有的索引都是正常的了。

/goland%E5%AF%BC%E5%85%A5docker%E9%A1%B9%E7%9B%AE%E6%BA%90%E7%A0%81/img_1.png

另外,通过这种方式导入项目,Go Modules 上需要 disable。

/goland%E5%AF%BC%E5%85%A5docker%E9%A1%B9%E7%9B%AE%E6%BA%90%E7%A0%81/img_2.png

之后就可以开始在 Goland 上愉快的查看 Docker/Moby 的源码了!

参考资料

  1. moby
警告
本文最后更新于 2023年2月11日,文中内容可能已过时,请谨慎参考。