使用PHP Composer从Laravel中删除包的正确方法是什么?
到目前为止,我尝试过:
从文件编写器中删除声明。Json(在“require”部分) 从app.php文件中删除任何类别名 从我的代码中删除对包的任何引用:-) 运行编写器更新 运行composer dump-autoload
这些方法都不管用!我错过了什么?
使用PHP Composer从Laravel中删除包的正确方法是什么?
到目前为止,我尝试过:
从文件编写器中删除声明。Json(在“require”部分) 从app.php文件中删除任何类别名 从我的代码中删除对包的任何引用:-) 运行编写器更新 运行composer dump-autoload
这些方法都不管用!我错过了什么?
当前回答
在从编写器中删除包之前。Json声明,请删除缓存:
php artisan cache:clear
php artisan config:clear
如果你忘记删除缓存,你得到一个“类未找到错误”,然后请重新安装包,清除缓存,并再次删除。
其他回答
你可以做以下两种方法中的任何一种:
运行以下命令(在不更新其他包的情况下删除包的最推荐方法) $ composer删除供应商/包 去找你的作曲家。Json文件,然后运行如下命令,它将删除你的包(但它也会更新你的其他包) $ composer更新
作曲家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
在Laravel。*,以下步骤对我有用:
在终端上执行命令composer remove package-name 从Config/app.php文件中删除Provider和别名 从Config文件夹中删除相关文件。
从使用它的代码中删除它。
要添加包,命令如下:
composer require spatie/laravel-permission
要删除包,命令如下:
composer remove spatie/laravel-permission
如果给出的答案仍然不能帮助你消除这些问题,试试这个:
手动删除composer.json中的require行 运行编写器更新