0

举个例子来说明我的疑惑:
比如包A发布了,然后包B依赖了包A,有一天包A写的东西也依赖了包B,这种情况还是有的吧?尤其是我自己写的本地包,这种情况应该更容易发生,所以我想请问下有经验的人士,在这方面有什么指导意见吗?又或者说这种情况是允许的?

9月28日提问
1 个回答
0

循环依赖说明你设计有问题啊……完全不应该这么做才对。

而且理论上只有你发布包后且更新了包才会出现这种问题。

比如刚开始只有 A 依赖 B-0.1,然后 A 发布了一个版本 0.1;接着 B 开始依赖 A-0.1,也发布了一个版本 0.2。那么就一定存在一个刚开始的版本的 B-0.1,它不依赖 A-0.1。

composer 也是按版本来确定依赖关系的,此时下载的 B-0.2 依赖的是 A-0.1,而 A-0.1 依赖的是 B-0.1,B-0.1 不依赖任何。

因为版本号是始终递增且不重复的,所以这么做倒也没问题,就是太恶心了。

如果自己搭私服,版本号也是乱的,那基本上发布和安装的时候就报错了,根本不会给你自己创造循环依赖的机会……

撰写答案

推广链接