问题描述
-
作者在安装 Flarum 的插件
extiverse/mercury
时报错,内容如下图所示
解决方案
⚠警告:请备份所有数据再进行接下来的操作,此操作可能会导致网站不可用!
- 报错原因:主要问题是在安装过程中解决依赖关系。具体来说,
extiverse/mercury
包与你项目当前状态或相互之间存在依赖冲突。extiverse/mercury
需要extiverse/api-client
,而这个包在不同版本中对guzzlehttp/guzzle
包的要求不同。extiverse/api-client
的不同版本要求guzzlehttp/guzzle
的版本为7.3.*
、7.4.*
或7.5.*
,但你的项目当前固定在另一个版本的guzzlehttp/guzzle
(7.8.1)。这导致了冲突,因为 Composer 无法同时满足这些版本要求。
- 解决方案建议:Composer 建议使用
--with-all-dependencies
(-W
)选项。这个选项允许 Composer 尝试通过考虑当前特定版本锁定的包的更新、降级和移除来解决这些冲突。这意味着 Composer 将尝试调整所有依赖关系。 - 结果如图所示: