首页 > 解决方案 > 作曲家没有从 composer.lock 中删除条目

问题描述

我使用以下命令使用 composer 删除了一个包。

composer remove sjparkinson/static-review

上面的命令从文件中删除条目,composer.json但 composer.lock 文件仍然包含require部分中提到的库的条目。

更新的正确方法是composer.lock什么?我应该手动更新吗?

标签: composer-php

解决方案


Composer 不会删除这个包,因为它是另一个依赖项所必需的。所以即使你不直接需要它,你的项目仍然需要它,所以你不能删除它。您可以使用composer why some-vendor/some-package命令检查保持此软件包安装的原因:

composer why sjparkinson/static-review

magento/product-community-edition 2.2.4 需要 sjparkinson/static-review (~4.1)

如果你真的想删除这个包,你也需要删除magento/product-community-edition(以及依赖于这个包的每个依赖项)。


顺便说一句:composer.lock手动编辑真的是个坏主意,你永远不应该这样做。


推荐阅读