模块在 Go 中确定了一个重要的原则,即 导入兼容性规则 如果旧包和新包的导入路径相同,新包必须向后兼容旧的包 所以一旦你依赖了某个包的两个版本,那么较低版本的将会被忽略。 举个例子: 项目 A 和 B 都 依赖 项目 C 但项目A依赖的是项目的V2版本,项目B依赖的是项目C的V1版本 一旦项目A去引用项目B,那么项目B的V1版本将会被忽略 所以针对这个情况,我们依赖的项目如果做升级,一定要做兼容性升级,也就是你不能把项目C的V1版本里面的东西删掉 如果说真的想删或者大改动怎么办?,你可以修改 go