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

到目前为止,我尝试过:

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

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


当前回答

在Laravel。*,以下步骤对我有用:

在终端上执行命令composer remove package-name 从Config/app.php文件中删除Provider和别名 从Config文件夹中删除相关文件。

从使用它的代码中删除它。

其他回答

如果给出的答案仍然不能帮助你消除这些问题,试试这个:

手动删除composer.json中的require行 运行编写器更新

如果在完成前面回答的所有步骤后仍然得到错误,请转到您的项目,Bootstrap→Cache→config.php。手动从缓存数组中删除提供程序和别名项。

在Laravel。*,以下步骤对我有用:

在终端上执行命令composer remove package-name 从Config/app.php文件中删除Provider和别名 从Config文件夹中删除相关文件。

从使用它的代码中删除它。

我们提出了一个很好的解决方案。这个解决方案实际上在Laravel 6中完成了。如果你想从你的Laravel项目中删除任何包,那么你可以通过以下步骤轻松删除包:

步骤1:您必须知道要删除的包的名称。如果你不知道完整的包名,那么你可以打开你的项目文件夹,然后转到编辑器。Json文件,并在require数组中检查名称:

"require": {
        "php": "^7.2",
        "fideloper/proxy": "^4.0",
        "laravel/framework": "^6.2",
        "laravel/passport": "^8.3",
        "laravel/tinker": "^2.0"
    },

假设,在这里我要删除“fideloper/proxy”包。

步骤2:用项目根文件夹目录打开命令提示符

步骤3:首先,使用以下命令清除所有缓存。依次执行命令。

php artisan cache:clear  
php artisan config:clear 

步骤4:现在写以下命令删除包。这里您需要更改您的包名称,而不是我的示例包。

composer remove fideloper/proxy

现在,等待几秒钟,您的包裹将被取出。

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

composer remove vendor/your_package_name
composer update