Класс 'Way \ Generators \ GeneratorsServiceProvider' не найден - PullRequest
0 голосов
/ 19 февраля 2019

Я пытаюсь запустить Laravel на Google App Engine Standard.Я уже работал над гибкостью, но требования изменились, и теперь нам нужен стандарт.Я использую среду PHP 7.2 с Laravel 5.7.Развертывание работает, но при попытке посетить страницу, я просто получаю сообщение об ошибке в журналах:

Symfony\Component\Debug\Exception\FatalThrowableError: Class 'Way\Generators\GeneratorsServiceProvider' not found
at Illuminate\Foundation\Application->register (/srv/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:662)

Строка 662 для меня локально, по крайней мере, просто return new $provider($this);, которая, кажется, явно не ссылаетсяпакет генераторов.

Этот пакет генератора выглядит как way/generators, но когда я делаю composer require way/generators локально, он выдает миллион различных предупреждений, за которыми следует

> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi

In GeneratorsServiceProvider.php line 58:

  Call to undefined method Illuminate\Foundation\Application::share()  


Script @php artisan package:discover --ansi handling the post-autoload-dump event returned with error code 1

Из того, что я 'читаем Laravel> 5 не нужен пакет Generators, так как он уже включен, но по какой-то причине в GAE он пытается ссылаться на него (локально он работает нормально с artisan serve).Я перепробовал все виды команд после установки, но ничего не помогло.

"post-install-cmd": [
            "php artisan cache:clear",
            "php artisan optimize:clear",
            "php artisan config:clear",
            "php artisan config:cache",
            "Illuminate\\Foundation\\ComposerScripts::postInstall",
            "php artisan optimize",
            "chmod -R 755 bootstrap\/cache"
        ]

1 Ответ

0 голосов
/ 19 февраля 2019

Как вы упомянули в комментариях, проблема связана с использованием xethron/migrations-generator (https://github.com/Xethron/migrations-generator), что требует дополнительной ручной настройки поставщиков услуг либо в config/app.php, либо app/Providers/AppServiceProvider.php. Странно то, что его composer.json не требует way/generators, а скорее включает в себя другой пакет, который также содержит файлы (?) Для way/generators. Очень странно, но объясняет, почему вещи становятся беспорядочными при composer install.

КакВы закончили, обстреливая это вариант, или завершение ручной настройки также может быть в порядке, хотя way/generators для более старых версий Laravel и не обязательно может работать на 100%.

...