使用PHP Composer从Laravel中删除包的正确方法是什么?

到目前为止,我尝试过:

从文件编写器中删除声明。Json(在“require”部分) 从app.php文件中删除任何类别名 从我的代码中删除对包的任何引用:-) 运行编写器更新 运行composer dump-autoload

这些方法都不管用!我错过了什么?


当前回答

从供应商文件夹中删除包文件夹(手动删除) 从文件编写器中删除它。Json和'composer。锁定文件(使用Ctrl + F5搜索) 从config/app.php文件和bootstrap/cache/config.php文件中删除它 执行以下命令: 编译器删除**your-package-name** PHP工匠缓存:清除 PHP工匠配置:清除

其他回答

这里有很多步骤:

转到文件编写器。Json,然后看看这个包是怎么写的。

例如

“要求”: (twig/twig)

我希望移除3.0的树枝

现在打开cmd并运行composer remove vendor/your_package_name as composer remove twig/twig将删除包。 作为最后一步,运行composer update。这肯定会提示您没有需要安装或更新的东西,但如果您的包有相互依赖关系,这是很重要的。

你可以做以下两种方法中的任何一种:

运行以下命令(在不更新其他包的情况下删除包的最推荐方法) $ composer删除供应商/包 去找你的作曲家。Json文件,然后运行如下命令,它将删除你的包(但它也会更新你的其他包) $ composer更新

要添加包,命令如下:

composer require spatie/laravel-permission

要删除包,命令如下:

composer remove spatie/laravel-permission

作曲家1。X和2.x

运行以下命令将从vendor(或任何安装包的地方)、composer中删除包。Json和composer.lock。适当地更改供应商/包。

composer remove vendor/package

显然,你需要在应用程序中删除对该包的引用。

我目前正在运行以下版本的Composer:

Composer version 1.0-dev (7b13507dd4d3b93578af7d83fbf8be0ca686f4b5) 2014-12-11 21:52:29

文档

https://getcomposer.org/doc/03-cli.md#remove

更新

26/10/2020 -更新的答案断言命令适用于v1。X和v2。作曲家的x

只要在终端中输入以下命令,就可以删除任何包,并删除安装包时提供的提供程序和别名(如果有的话),并更新编写器。

composer remove vendor/your_package_name
composer update