前言 在项目,我们或多或少都会遇到go的包循环引用的问题,类似这样 这就让人很头疼,为什么在其他语言都没见过这种错误呢?这我们就得来谈谈go的设计理念了。 go 为什么不允许循环引用 曾经有人提议Go语言作者Rob Pike,想要在Go以后的版本去掉循环引入;Rob Pike坚决不同意。Rob Pike觉得假如你两个包之间存在循环引入的问题,那一定是你在设计之初就没考虑好模块的划分。 加快编译速度 规范框架设计,使项目结构更加清晰明了 定位循环引用 如上图所示,想要定位到循环引用的具体文件,具体的