2 回答

TA贡献1757条经验 获得超7个赞
当两个不同的包指向相同的依赖关系时,会出现“ 只能安装一个[x,y] ”消息,但不同的主要互斥版本只能安装一个。
故障排除
例如,由于文件中存在的信息可能与您尝试安装的信息冲突,因此可以“ 锁定 ” 一个版本composer.lock
。在这种情况下,当混淆错误带有“ 锁定在xyz ”消息时,您可以使用以下命令来了解已安装软件包的现有依赖关系:
composer show -t
注意:-t
显示为嵌套树视图,将其删除以查看平面列表。
要查看项目中引用有问题的包的位置,请运行:
composer why org/package -t
注意:-t
显示为嵌套树视图,将其删除以查看平面列表。
要查看您尝试安装的软件包的详细信息,您可以运行:
composer show -a org/package # Package to inspect.
注意:要检查特定版本,请添加x.y.z
,例如:composer show -a guzzlehttp/guzzle 6.2.0
要进一步解决问题,根据您的具体情况,您可以尝试:
通过以下方式更新具有依赖项的现有包:
composer update --with-dependencies
升级或删除您的冲突依赖项
composer.json
(保持简单)。当混淆消息显示“ 锁定在xyz ”时,用于
composer why org/package
查看引用包的位置(或composer.lock
通过查找手动检查内容x.y.z
)。如果没有帮助,请考虑删除composer.lock
并重新尝试;当要求
composer.json
从不同的文件夹中使用时,请选择n
。composer.json
在空文件夹上重新尝试简单的简化配置。运行
composer diagnose
以检查是否存在任何常见错误。使用
-v
/-vv
/-vvv
增加你的命令的详细程度。
- 2 回答
- 0 关注
- 681 浏览
添加回答
举报