Как удалить пакет из Laravel с помощью композитора?

Каков правильный способ удаления пакета из Laravel 4? Я так долго пробовал:

  • Удалить объявление из composer.json (в разделе "require" )
  • Удалите все псевдонимы классов из app.php
  • Удалите с моего кода любые ссылки на пакет: -)
  • Запустить composer update
  • Запустить composer dump-autoload

Не работает! Я что-то пропустил?

Некоторые пакеты публикуют свою конфигурацию через "artisan config: publish...". Есть ли способ "отменить публикацию" их?

Ответ 1

Выполнение следующей команды приведет к удалению пакета из поставщика (или где бы вы ни устанавливали пакеты), composer.json и composer.lock. Измените поставщика/пакет соответствующим образом.

composer remove vendor/package

Очевидно, вам нужно будет удалить ссылки на этот пакет в своем приложении.

В настоящее время я использую следующую версию композитора:

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

Ответ 2

Сработало... Шаги по удалению пакета из Laravel:

  • Удалить объявление из composer.json(в разделе "require" )
  • Удалить поставщика услуг из "app/config/app.php" (ссылка в массиве "поставщики" )
  • Удалите все псевдонимы классов из "app/config/app.php"
  • Удалите с вашего кода любые ссылки на пакет: -)
  • Запустите "поставщик обновления/имя пакета композитора". Это удалит папку пакета из папки "vendor" и перестроит карту автозагрузки композитора.
  • Вручную удалить опубликованные файлы (прочитать комментарий zwacky)

Он удалит папку пакета из папки "Поставщик"

Ответ 3

Выполнение следующей команды

composer remove Vendor/Package Name

Все это. Не нужно обновление композитора. Имя поставщика/пакета - это просто каталог, установленный ранее

Ответ 4

Обычно composer remove используется достаточно:

$ composer remove vendor/package

но если пакет composer удален, а кеш конфигурации не очищен, вы не сможете очистить его, когда вы пытаетесь так

php artisan config:clear

Вы можете получить ошибку In ProviderRepository.php line 208:

Класс 'Laracasts\Flash\FlashServiceProvider' не найден

это тупик, если только вы не удалите файлы

$rm bootstrap/cache/config.php

И это Laravel 5.6, о котором я говорю, а не какой-то очень старый материал.

Обычно это происходит при автоматическом развертывании, когда вы копируете файлы нового выпуска поверх старого кеша. Даже если вы очистили кеш перед копированием. В итоге вы получите старый кеш и новый composer.json.

Ответ 5

Вы можете удалить любой пакет, просто набрав в терминале команду follwing, и просто удалите провайдеров и псевдоним, которые вы указали во время установки пакета, если таковые имеются, и обновите композитор,

composer remove vendor/your_package_name
composer update

Ответ 6

Вы можете сделать любой из следующих двух методов:

  1. Выполнение приведенной ниже команды (наиболее рекомендуемый способ удаления вашего пакета без обновления других пакетов)

    $ composer remove vendor/package

  2. Перейдите к файлу composer.json, а затем выполните команду, как показано ниже, она удалит ваш пакет (но он также обновит и другие ваши пакеты)

    $ composer update

Ответ 7

Если вы все еще получаете сообщение об ошибке после выполнения всех вышеуказанных шагов, перейдите в свои проекты bootstrap->cache->config.php вручную удалить записи поставщика и псевдонимов из кэшированного массива.

Ответ 8

Перед удалением пакета из объявления composer.json удалите кеш

php artisan cache:clear  
php artisan config:clear 

Если вы забыли удалить кеш и у вас возникла ошибка класса not found, переустановите пакет, очистите кеш и удалите снова.

Ответ 9

Самый простой и легкий способ

Синтаксис:

composer remove <package>

Пример:

composer remove laravel/tinker

Ответ 10

**

используйте "композитор удалить продавца/пакет"

** Это пример: установить/добавить Pakage

composer require firebear/importexportfree

Uninsall/Удалить

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

Ответ 11

Если данные ответы по-прежнему не помогают вам удалить это, попробуйте следующее:

  • Вручную удалите строку require из composer.json

  • Запустите composer update

Ответ 12

Чтобы удалить пакет с помощью команды composer

composer remove <package>

Чтобы установить пакет с помощью команды composer

composer require <package>

Установить все пакеты, которые упомянуты в composer.json

composer install

Чтобы обновить пакеты

composer update

Я использовал их для проекта Laravel

Ответ 13

Вы можете удалить любой пакет, введя следующую команду в терминале, и просто удалить провайдеров и псевдонимы, которые вы указали во время установки пакета, и обновить композитора

composer remove <package_name>
composer update

Ответ 14

Запустите следующие команды,

composer remove vendor/your_package_name
composer update