3

正如问题所述,如果项目A需要x,y,那么它们都需要d1,d2,d3,d4 & d5包。 Composer是否为x,y和z软件包下载d1,d2,d3,d4 & d5三次?Composer如何处理一个项目中多个包的共享依赖关系?

这听起来很符合逻辑,但并不实用,特别是如果d1,d2,d3,d4包需要反过来又一组共享依赖关系......这将是一个项目代码库中的大量重复代码。

在此先感谢

回答

10

简短的回答是没有。由于在PHP中多次加载库是不可能的,因此每个软件包独立下载依赖是没有意义的。因此,Composer将解决所有软件包的所有依赖关系,然后立即安装它们而不会重复。

+0

谢谢Seldaek ..你有没有试过它自己?如果你说的是真的,作曲家将共享库放在哪里?供应商目录中的某处,以便其他人共享? – zoro74 2013-03-27 08:58:46

+6

所有的依赖关系(无论您的项目的直接依赖关系,还是第二/第三/ ...度依赖关系)都以'vendor/'结尾。是的,自从我担任项目负责人以来,我自己尝试了几次;) – Seldaek 2013-03-27 10:08:15

相关问题