Класс провайдера не найден в строке 208 ProviderRepository.php

Я пытался удалить пакет spatie / Geocoder https://github.com/spatie/geocoder это из моего приложения laravel, он вытащил пакет из Github, но удаление пакета не было успешным.

Ниже приведена ошибка, возвращаемая командой композитора.

Краткое описание экрана терминала:

Класс провайдера не найден в строке 208 ProviderRepository.php

Заранее спасибо

Вы запускали composer dumpautoload?

aynber 07.12.2018 17:04

вы пробовали очистить свой конфиг? php artisan config:clear

adam 07.12.2018 17:12

да, запустите как command composer dumautoload, так и php artisan config: clear, но выдает ту же ошибку @aynber

Moaiz 10.12.2018 12:44

Пожалуйста, поделитесь сообщением об ошибке в удобочитаемой форме - текст лучше всего использовать как текст. Кроме того, как вы удалили этот пакет?

Nico Haase 24.04.2020 23:37
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
28
4
48 091
13
Перейти к ответу Данный вопрос помечен как решенный

Ответы 13

Удалите строки ниже:

// config/app.php
'providers' => [
    '...',
    Spatie\Geocoder\GeocoderServiceProvider::class
];
// config/app.php
'aliases' => array(
    ...
    'Geocoder' => Spatie\Geocoder\Facades\Geocoder::class,
)

Запустите composer du в консоли сервера.

Эти строки уже удалены из файла конфигурации, но не работают, показывая ту же ошибку @arthur Samarcos

Moaiz 10.12.2018 12:46
Ответ принят как подходящий

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

Отличное решение, работает в таких случаях, если файл провайдера не найден.

Ranjan Fadia 21.09.2021 17:24

У меня такая же проблема с моим предыдущим проектом laravel.

Сначала попробуйте:

service apache2 restart

Или любую аналогичную команду в зависимости от вашей ОС, например Я перезапустил свой Wamp-сервер.

затем в папке Laravel:

composer dump-autoload

Надеюсь, поможет.

У меня не сработало

MrEduar 29.09.2021 19:25

Я столкнулся с этой же проблемой. Я попробовал дамп-автозагрузку, очистить конфиг и многое другое, но ничего не помогло. В конце концов, я удалил config.php из bootstrap / cache, а затем запустил composer dump-autoload. Это сработало.

Мне не помогло :(

Alexey Abraham 02.10.2020 17:06

У меня не сработало

MrEduar 29.09.2021 19:26

сначала проверьте файл composer.json, под ключом psr-4 из раздела автозагрузки вы можете определить сопоставление пространств имен с путями относительно корня пакета.

   {
"autoload": {
    "psr-4": {
         "Spatie\\Geocoder\\": "src" //<<---For example, in your case, this mapping should be done
    }
}

}

а затем выполните следующую команду, чтобы восстановить список всех классов, которые необходимо включить в проект.

composer dump-autoload

для получения дополнительной информации и примера посмотрите эту ссылку https://getcomposer.org/doc/04-schema.md#autoload

Пожалуйста, добавьте пояснение к своему ответу, чтобы другие могли извлечь из него уроки - какие сопоставления следует добавить для пакета, который не установлен?

Nico Haase 24.04.2020 23:38

Спасибо за руководство. Мне очень жаль, если это было непонятно. Я добавил больше деталей и надеюсь, что это будет полезно.

fatemeh sadeghi 25.04.2020 03:14

Вы так и не сказали, зачем это нужно. OP удалил этот пакет, поэтому ничего из этого пространства имен загружаться не должно.

Nico Haase 25.04.2020 09:19

мой язык не английский, пожалуйста, добавьте пояснение к вашему комментарию;) что такое OP? эта ошибка связана не только с этим пакетом, а с ядром laravel. У меня есть эта ошибка при установке пакета модулей laravel, и я установил ту же конфигурацию, чтобы исправить ее!

fatemeh sadeghi 25.04.2020 17:45

Самым простым для меня было просто удалить файлы в / bootstrap / cache /. Они будут восстановлены автоматически.

но файл apper снова, затем снова ошибка

zukijuki 30.12.2020 03:09

сначала удалите провайдера и псевдоним из app.php. а затем удалите директорию / bootstrap / cache, а затем снова создайте директорию кэша директории в директории начальной загрузки. далее запускаем композитор дамп-автозагрузка.

Bangash 11.03.2021 08:48

В конечном итоге исправление, которое сработало для меня:

Удалите папку "продавец" и снова запустите composer install.

Возможно, было возможно более конкретное исправление, но это все равно неплохо очищает.

Единственное решение, которое сработало для меня, потому что у меня не было файла config.php в папке bootstrap / cache. Тем не менее старые псевдонимы пакетов остаются в некоторых файлах, но, похоже, не вызывают ошибок.

trinity420 26.12.2020 15:22

Работал для меня, похоже, что composer.lock не обновляется с последними требованиями

Frank Leal 10.03.2021 18:14

В app\config.php

Заменять

JeroenNoten\LaravelAdminLte\ServiceProvider::class,

с участием

JeroenNoten\LaravelAdminLte\AdminLteServiceProvider::class,

а потом делай все, что хочешь.

Попробуйте либо полностью удалить файл app\config.php, либо удалить провайдера / псевдонимы в app\config.php, связанные с Spatie\Geocoder\GeocoderServiceProvider.

Это то, что помогло мне.

Я перешел к

project > bootstrap->cache folder.

Там был этот файл

packages.php

Я удалил это.

rm packages.php

Затем я побежал

composer dump-autoload

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

composer dump-autoload --no-dev

Я выполнил вышеупомянутое в производстве.

Удаление JeroenNoten\LaravelAdminLte\ServiceProvider::class из config/app.php решит проблему.

  1. Запуск: composer update

  2. Запуск: composer dump-autoload

У меня работает с Laravel 8.x

В большинстве случаев подобное обновление композитора помогло мне.

Yogesh.galav 08.09.2021 15:31

Используйте эти 3 команды, чтобы исправить ошибку.

composer install --optimize-autoloader --no-dev
    
php artisan config:cache

php artisan cache:clear

Другие вопросы по теме