首页 文章

如何从composer中删除未使用的依赖项?

提问于
浏览
152

我安装了一个包含composer的包,并且它安装了许多其他包作为依赖项 .

现在我用 composer remove packageauthor/packagename 卸载了主程序包,但是没有删除所有旧的依赖项 . 我希望composer能够清理并只保留根据 composer.json 及其依赖项所需的包 .

如何强制编写器清理并删除所有未使用的包?

4 回答

  • 24

    正确的方法是:

    composer remove jenssegers/mongodb --update-with-dependencies
    

    我必须承认,这里的旗帜并不十分明显 .

    更新

    截至v1.0.0-beta2 --update-with-dependencies 是默认值,不再需要 .

  • 5

    事实上,这很容易 .

    composer update
    

    将为您完成所有这些,但它也将更新其他包 .

    要删除包而不更新其他包,请在命令中指定该包,例如:

    composer update monolog/monolog
    

    将删除 monolog/monolog 包 .

    但是,可能仍有一些空文件夹或文件无法自动删除,必须手动删除 .

  • 292

    以下命令将完美地执行相同操作

    rm -rf vendor
    
    composer install
    
  • 7

    只需运行 composer install - 它将使 vendor 目录反映 composer.lock 文件中的依赖项 .

    换句话说 - 它将删除 composer.lock 中缺少的任何供应商 .

    请在运行之前更新作曲家 .

相关问题