Intereting Posts
Задайте переменную для вывода json_encode () в PHP Как найти разницу во времени между двумя датами с помощью PHP PHP Загрузить PDF всегда приводит к не поддерживаемому типу файла поврежденного файла как сделать ссылку для загрузки в PHP? Как получить дату следующего месяца с сегодняшней даты и вставить ее в мою базу данных? Как установить PHP mbstring на CentOS 6.2 Разбирайте таблицу html с помощью file_get_contents в php-массив Как получить базовый URL с PHP? Как получить чужой репозиторий внутри моего репозитория в Doctrine2 / Symfony2? Предоставление разрешения на запись PHP в Apache API HTML5 File – отправка файла на сервер для обработки Вызов неопределенной функции curl_init (), даже если он включен в php7 Как преобразовать эти координаты в читаемые координаты карты Google? Как получить доступ к «ключу» и «значению» из массива, переданного в цикл for? PHP – убить процесс proc_open () в другом файле?

Laravel 5.11 Ошибка обновления Composer

Пакет oriceon-oauth-5-laravel был установлен моим другом, и я вытащил код из git. Я запускаю обновление компоновщика команд, но он выдает следующую ошибку

исключение «Symfony \ Component \ Debug \ Exception \ FatalErrorException» с сообщением «Class» Artdarek \ OAuth \ OAuthServiceProvider «не найден» в / var / www / html / test / vendor / laravel / framework / src / Illuminate / Foundation / ProviderRepository. PHP: 146

Я разрешил это временно, комментируя поставщиков услуг и псевдонимы в файле app.php .

Итак, как правильно решить эту проблему. Это происходит после установки пакетов в laravel 5.11

Проблема заключается в том, что в файле config/app.php вы, вероятно, увидите следующее:

 Artdarek\OAuth\OAuthServiceProvider::class, 

в списке поставщиков. Поскольку вы еще не установили этот пакет, класс не существует. Я думаю, вы поняли эту часть, поскольку вы сказали, что прокомментировали поставщиков.

В composer.json вы увидите по сценариям:

 "pre-update-cmd": [ "php artisan clear-compiled" ], 

Это означает, что всякий раз, когда вы запускаете composer update , он сначала вызывает php artisan clear-compiled , которое загружает ваши файлы конфигурации, что не удается из-за этого отсутствующего класса.

Два способа обойти это:

Измените поставщика как цитату в строках, как они были в Laravel 4:

 "Artdarek\OAuth\OAuthServiceProvider", 

(поэтому никто не имел этой проблемы до Laravel 5 / PHP 5.5 ). Или…

Реальное решение

Просто запустите composer install вместо composer update . Это то, что вы должны делать в любом случае, потому что независимо от того, что ваш товарищ по команде толкнул, работала с версиями библиотек, которые находятся в composer.lock . Поэтому, если вы запустите установку, это: a) установка известных рабочих версий и b) обход этой команды php artisan до завершения установки.

Если вам действительно нужно запустить composer update , используйте его с флагом --no-scripts