10

这就是场景。

您的 composer.json 中有包 A 和包 B(您的应用程序依赖于这两个包)。

包 A 和 B 都依赖于包 C,但版本不同。假设 A 依赖于 C v2.1,而 B 依赖于 C v2.2。

你会得到版本冲突。

A、B 和 C 都是第三方软件包。

如何解决这个问题?

4

2 回答 2

3

这是一个技巧,但可能会让你继续前进。

您可以覆盖“A”、“B”和“C”包的存储库,并使“A”和“B”依赖于相同版本的“C”(实际上,覆盖“A”的存储库可能就足够了”和“B”)。

只要“A”和“B”都可以使用最新版本的“C”(因此维护者可能没有更新软件包版本),这应该可以工作。如果是这种情况,我还会考虑向具有旧版本依赖项的项目发送拉取请求。

于 2012-09-30T08:39:02.730 回答
-1

我们在这个邮件列表中讨论它:http: //news.php.net/php.internals/72594

“无冲突”技术必须在 PHP 中实现,这不是作曲家的错

于 2014-02-14T16:49:33.627 回答