Композитор дамп-автозагрузка ничего не делает

Я пытаюсь выполнить команду composer dump-autoload в проекте Laravel, но ничего не делает. Записывает только Generating optimized autoload files, потом останавливается.

Я пробовал его в другом проекте, и он работал хорошо (обнаружил пакеты и т. д.).

Я также попробовал его после обновления композитора (composer self-update), после проверки правильности моего composer.json (composer validate). Ничего не изменилось...

Команда composer update хорошо работает в части обновления, но делает то же самое, когда доходит до дамп-автозагрузки.

Есть у кого-нибудь решение?

Спасибо!

use composer dump-autoload -o с -ogetcomposer.org/doc/articles/autoloader-optimization.md
DevWL 02.08.2019 04:44
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
1
1
1 903
1

Ответы 1

Убедитесь, что ваши composer.json, pre-install-cmd и post-autoload-dump отсутствуют.

Ваш scripts должен выглядеть так

{
    "scripts": {
        "pre-install-cmd": [
            "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
        ],
        "post-autoload-dump": [
            "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
            "@php artisan package:discover"
        ]
    }        
}

Если проблема не исчезнет, ​​запустите composer dump-autoload -vvv и подробно проверьте ошибки.

В моем файле отсутствовал дамп после автозагрузки и метод postAutoloadDump. Я добавил их из другого проекта. Теперь я говорю, что «php artisan package: discover» не существует, но мой текущий проект находится на Laravel 5.4, поэтому я думаю, что именно поэтому.

Kévin Bibollet 29.06.2018 15:46

попробуйте запустить вручную в консоли php artisan package:discover. Также проверьте, есть ли у вас файл artisan, выполняющий ls -la | grep artisan

pablorsk 29.06.2018 15:50

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