如何使用composer从Laravel中删除包?

如何使用composer从Laravel中删除包?,laravel,laravel-4,package,composer-php,uninstallation,Laravel,Laravel 4,Package,Composer Php,Uninstallation,使用composer从Laravel中删除包的正确方法是什么? 到目前为止,我已经尝试: 从composer.json中删除声明(在“require”部分) 从app.php 从我的代码中删除对包的任何引用:-) 运行composer更新 运行composer dump autoload 这些选项都不起作用!我错过了什么?让它工作起来了。。。从Laravel中删除包的步骤如下: 从composer.json中删除声明(在“require”部分) 从config/app.php中删除服务提供者(参

使用composer从Laravel中删除包的正确方法是什么? 到目前为止,我已经尝试:

  • composer.json
    中删除声明(在“require”部分)
  • app.php
  • 从我的代码中删除对包的任何引用:-)
  • 运行
    composer更新
  • 运行
    composer dump autoload

  • 这些选项都不起作用!我错过了什么?

    让它工作起来了。。。从Laravel中删除包的步骤如下:

  • 从composer.json中删除声明(在“require”部分)
  • config/app.php
    中删除服务提供者(参考“提供者”数组)
  • config/app.php
  • 从代码中删除对包的任何引用:-)
  • 运行
    composer更新供应商/软件包名称
    。这将从
    供应商
    文件夹中删除软件包文件夹,并将重建composer自动加载映射
  • 手动删除已发布的文件(阅读zwacky的评论)
  • 它将从
    供应商
    文件夹

    Composer 1.x和2.x中删除软件包文件夹
    运行以下命令将从供应商(或安装软件包的任何地方)、composer.json和composer.lock中删除软件包。适当更改供应商/包装

    composer remove vendor/package
    
    显然,您需要删除应用程序中对该软件包的引用

    我当前正在运行以下版本的composer:

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

    更新
    • 2020年10月26日-更新assert命令的答案适用于Composer的v1.x和v2.x

    • 运行以下命令

      composer remove Vendor/Package Name
      
      就这些。无需作曲家更新。
      供应商/软件包名称只是之前安装的目录

      如果在完成上述所有步骤后仍然出现错误,请转到您的项目
      bootstrap->cache->config.php
      手动从缓存数组中删除提供程序和别名项。

      您可以执行以下两种方法之一:

    • 运行以下命令(最推荐的方法是在不更新其他软件包的情况下删除软件包)

      $composer删除供应商/软件包

    • 转到composer.json文件,然后运行如下命令,它将删除您的包(但也将更新其他包)

      $composer更新


    • 在从composer.json声明中删除包之前,请删除缓存

      php artisan cache:clear  
      php artisan config:clear 
      

      如果忘记删除缓存,并且出现“找不到类”错误,请重新安装软件包并清除缓存,然后再次删除。

      只需在terminal中键入folling命令,即可删除任何软件包,只需删除安装软件包时提供的提供程序和别名(如果有)并更新composer

      composer remove vendor/your_package_name
      composer update
      

      如果给出的答案仍然无法帮助您删除该问题,请尝试以下方法:

      • composer.json

      • 运行
        composer更新


      通常情况下,
      作曲家删除
      这样使用就足够了:

      $ composer remove vendor/package
      
      但若composer包被删除,而配置缓存未被清理,那个么当您尝试这样做时,您将无法清理它

      php artisan config:clear
      
      您可以在ProviderRepository.php第208行中获得一个错误:

      找不到类“Laracasts\Flash\FlashServiceProvider”

      这是一条死胡同,除非你去删除文件

      $rm bootstrap/cache/config.php
      
      我说的是拉威尔5.6,不是什么老东西


      这通常发生在自动部署时,即在旧缓存上复制新版本的文件时。即使在复制之前清除了缓存。最终得到的是旧缓存和一个新的composer.json

      使用composer命令删除包

      composer remove <package>
      
      composer require <package>
      
      更新软件包

      composer update
      
      我将这些用于Laravel项目

      最简单、最简单的方法 语法:

      composer remove <package>
      
      **

      使用“composer删除供应商/软件包”

      ** 例如: 安装/添加包装

      composer require firebear/importexportfree
      
      取消安装/删除

      composer remove firebear/importexportfree
      
      最后,在删除之后:

      php -f bin/magento setup:upgrade
      
      php bin/magento setup:static-content:deploy –f
      
      php bin/magento indexer:reindex 
      
      php -f bin/magento cache:clean
      

      您可以通过在终端中键入以下命令来删除任何软件包,只需删除安装软件包时提供的提供程序和别名并更新composer即可

      composer remove <package_name>
      composer update
      
      composer删除
      作曲家更新
      

      composer remove vendorname/packagename
      
      你可以查一下


      或者,您可以从
      composer.json
      文件中删除包名,并从项目目录中运行
      composer update
      。希望能有帮助。

      我们已经找到了一个很好的解决方案。此解决方案实际上是在Laravel 6中完成的。如果要从Laravel项目中删除任何包,则可以通过以下步骤轻松删除该包:

      步骤1:您必须知道要删除的包名。如果您不知道完整的软件包名称,则可以打开项目文件夹,转到
      composer.json
      文件并检入需要数组的名称

      "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.json,在那里查找包及其编写方式
      • 比如说
      {“要求”:{ “细枝/细枝”:“^3.0”}

      我希望删除细枝3.0

    • 现在打开cmd并运行
      composer remove vendor/your_package_name
      作为
      composer remove twig/twig
      这将删除包

      composer remove fideloper/proxy
      
    • 最后一步,运行
      composer update
      
      composer remove fideloper/proxy
      
      composer require spatie/laravel-permission
      
      composer remove spatie/laravel-permission