Laravel 5.2 服务提供商无法启动

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/36502249/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-09-14 13:34:05  来源:igfitidea点击:

Laravel 5.2 Service provider not booting

laravellaravel-5.2service-provider

提问by Illes Peter

I have a weird issue with a service provider. I have a ComposerServiceProvider with a dd("I'm loaded");in the boot()function. Nothing is happening.

我对服务提供商有一个奇怪的问题。我dd("I'm loaded");boot()函数中有一个 ComposerServiceProvider 。什么都没有发生。

I also have App\Providers\ComposerServiceProvider::classin config/app.php. I ran composer dump-autoloadseveral times. Can anybody help?

App\Providers\ComposerServiceProvider::class在 config/app.php 中也有。我跑composer dump-autoload了好几次。有人可以帮忙吗?

<?php namespace App\Providers;

use Illuminate\Support\ServiceProvider;

class ComposerServiceProvider extends ServiceProvider {

    /**
     * Bootstrap the application services.
     *
     * @return void
     */
    public function boot()
    {
        dd("I'm loaded");
    }

    /**
     * Register the application services.
     *
     * @return void
     */
    public function register()
    {
        //
    }

}

EDIT: Here's my bootstrap/cache/services.php, where it also does not appear, even after php artisan clear-compiled

编辑:这是我的 bootstrap/cache/services.php,它也没有出现,即使在 php artisan clear-compiled 之后

<?php return array (
  'providers' =>
  array (
    0 => 'Illuminate\Auth\AuthServiceProvider',
    1 => 'Illuminate\Broadcasting\BroadcastServiceProvider',
    2 => 'Illuminate\Bus\BusServiceProvider',
    3 => 'Illuminate\Cache\CacheServiceProvider',
    4 => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    5 => 'Illuminate\Cookie\CookieServiceProvider',
    6 => 'Illuminate\Database\DatabaseServiceProvider',
    7 => 'Illuminate\Encryption\EncryptionServiceProvider',
    8 => 'Illuminate\Filesystem\FilesystemServiceProvider',
    9 => 'Illuminate\Foundation\Providers\FoundationServiceProvider',
    10 => 'Illuminate\Hashing\HashServiceProvider',
    11 => 'Illuminate\Mail\MailServiceProvider',
    12 => 'Illuminate\Pagination\PaginationServiceProvider',
    13 => 'Illuminate\Pipeline\PipelineServiceProvider',
    14 => 'Illuminate\Queue\QueueServiceProvider',
    15 => 'Illuminate\Redis\RedisServiceProvider',
    16 => 'Illuminate\Auth\Passwords\PasswordResetServiceProvider',
    17 => 'Illuminate\Session\SessionServiceProvider',
    18 => 'Illuminate\Translation\TranslationServiceProvider',
    19 => 'Illuminate\Validation\ValidationServiceProvider',
    20 => 'Illuminate\View\ViewServiceProvider',
    21 => 'App\Providers\AppServiceProvider',
    22 => 'App\Providers\AuthServiceProvider',
    23 => 'App\Providers\EventServiceProvider',
    24 => 'App\Providers\HelperServiceProvider',
    25 => 'App\Providers\RouteServiceProvider',
    26 => 'C4studio\EmailCssInliner\EmailCssInlinerServiceProvider',
    27 => 'Collective\Html\HtmlServiceProvider',
    28 => 'Radic\BladeExtensions\BladeExtensionsServiceProvider',
  ),
  'eager' =>
  array (
    0 => 'Illuminate\Auth\AuthServiceProvider',
    1 => 'Illuminate\Cookie\CookieServiceProvider',
    2 => 'Illuminate\Database\DatabaseServiceProvider',
    3 => 'Illuminate\Encryption\EncryptionServiceProvider',
    4 => 'Illuminate\Filesystem\FilesystemServiceProvider',
    5 => 'Illuminate\Foundation\Providers\FoundationServiceProvider',
    6 => 'Illuminate\Pagination\PaginationServiceProvider',
    7 => 'Illuminate\Session\SessionServiceProvider',
    8 => 'Illuminate\View\ViewServiceProvider',
    9 => 'App\Providers\AppServiceProvider',
    10 => 'App\Providers\AuthServiceProvider',
    11 => 'App\Providers\EventServiceProvider',
    12 => 'App\Providers\HelperServiceProvider',
    13 => 'App\Providers\RouteServiceProvider',
    14 => 'C4studio\EmailCssInliner\EmailCssInlinerServiceProvider',
    15 => 'Radic\BladeExtensions\BladeExtensionsServiceProvider',
  ),
  'deferred' =>
  array (
    'Illuminate\Broadcasting\BroadcastManager' => 'Illuminate\Broadcasting\BroadcastServiceProvider',
    'Illuminate\Contracts\Broadcasting\Factory' => 'Illuminate\Broadcasting\BroadcastServiceProvider',
    'Illuminate\Contracts\Broadcasting\Broadcaster' => 'Illuminate\Broadcasting\BroadcastServiceProvider',
    'Illuminate\Bus\Dispatcher' => 'Illuminate\Bus\BusServiceProvider',
    'Illuminate\Contracts\Bus\Dispatcher' => 'Illuminate\Bus\BusServiceProvider',
    'Illuminate\Contracts\Bus\QueueingDispatcher' => 'Illuminate\Bus\BusServiceProvider',
    'cache' => 'Illuminate\Cache\CacheServiceProvider',
    'cache.store' => 'Illuminate\Cache\CacheServiceProvider',
    'memcached.connector' => 'Illuminate\Cache\CacheServiceProvider',
    'command.cache.clear' => 'Illuminate\Cache\CacheServiceProvider',
    'command.clear-compiled' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.auth.resets.clear' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.config.cache' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.config.clear' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.down' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.environment' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.key.generate' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.optimize' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.route.cache' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.route.clear' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.route.list' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.tinker' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.up' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.view.clear' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.app.name' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.auth.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.cache.table' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.console.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.controller.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.event.generate' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.event.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.job.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.listener.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.middleware.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.model.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.policy.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.provider.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.queue.failed-table' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.queue.table' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.request.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.seeder.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.session.table' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.serve' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.test.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.vendor.publish' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'Illuminate\Console\Scheduling\ScheduleRunCommand' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'migrator' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'migration.repository' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.migrate' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.migrate.rollback' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.migrate.reset' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.migrate.refresh' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.migrate.install' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.migrate.status' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'migration.creator' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.migrate.make' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'seeder' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.seed' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'composer' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.queue.failed' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.queue.retry' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.queue.forget' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'command.queue.flush' => 'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider',
    'hash' => 'Illuminate\Hashing\HashServiceProvider',
    'mailer' => 'Illuminate\Mail\MailServiceProvider',
    'swift.mailer' => 'Illuminate\Mail\MailServiceProvider',
    'swift.transport' => 'Illuminate\Mail\MailServiceProvider',
    'Illuminate\Contracts\Pipeline\Hub' => 'Illuminate\Pipeline\PipelineServiceProvider',
    'queue' => 'Illuminate\Queue\QueueServiceProvider',
    'queue.worker' => 'Illuminate\Queue\QueueServiceProvider',
    'queue.listener' => 'Illuminate\Queue\QueueServiceProvider',
    'queue.failer' => 'Illuminate\Queue\QueueServiceProvider',
    'command.queue.work' => 'Illuminate\Queue\QueueServiceProvider',
    'command.queue.listen' => 'Illuminate\Queue\QueueServiceProvider',
    'command.queue.restart' => 'Illuminate\Queue\QueueServiceProvider',
    'queue.connection' => 'Illuminate\Queue\QueueServiceProvider',
    'redis' => 'Illuminate\Redis\RedisServiceProvider',
    'auth.password' => 'Illuminate\Auth\Passwords\PasswordResetServiceProvider',
    'auth.password.broker' => 'Illuminate\Auth\Passwords\PasswordResetServiceProvider',
    'translator' => 'Illuminate\Translation\TranslationServiceProvider',
    'translation.loader' => 'Illuminate\Translation\TranslationServiceProvider',
    'validator' => 'Illuminate\Validation\ValidationServiceProvider',
    'validation.presence' => 'Illuminate\Validation\ValidationServiceProvider',
    'html' => 'Collective\Html\HtmlServiceProvider',
    'form' => 'Collective\Html\HtmlServiceProvider',
    'Collective\Html\HtmlBuilder' => 'Collective\Html\HtmlServiceProvider',
    'Collective\Html\FormBuilder' => 'Collective\Html\HtmlServiceProvider',
  ),
  'when' =>
  array (
    'Illuminate\Broadcasting\BroadcastServiceProvider' =>
    array (
    ),
    'Illuminate\Bus\BusServiceProvider' =>
    array (
    ),
    'Illuminate\Cache\CacheServiceProvider' =>
    array (
    ),
    'Illuminate\Foundation\Providers\ConsoleSupportServiceProvider' =>
    array (
    ),
    'Illuminate\Hashing\HashServiceProvider' =>
    array (
    ),
    'Illuminate\Mail\MailServiceProvider' =>
    array (
    ),
    'Illuminate\Pipeline\PipelineServiceProvider' =>
    array (
    ),
    'Illuminate\Queue\QueueServiceProvider' =>
    array (
    ),
    'Illuminate\Redis\RedisServiceProvider' =>
    array (
    ),
    'Illuminate\Auth\Passwords\PasswordResetServiceProvider' =>
    array (
    ),
    'Illuminate\Translation\TranslationServiceProvider' =>
    array (
    ),
    'Illuminate\Validation\ValidationServiceProvider' =>
    array (
    ),
    'Collective\Html\HtmlServiceProvider' =>
    array (
    ),
  ),
);

回答by Illes Peter

Got an answer on another forum from rodrigo.pedra:

从 rodrigo.pedra 的另一个论坛上得到了答案:

php artisan config:clear
php artisan clear-compiled

The first will clear any cached config files, and the later will clear the services cache

第一个将清除所有缓存的配置文件,后者将清除服务缓存

回答by Linek

You said you tried php artisan clear-compiledand composer dump-autoloadbut have you tried running all those commands?

您说您尝试过 php artisan clear-compiledcomposer dump-autoload但是您是否尝试过运行所有这些命令?

php artisan clear-compiled 
composer dump-autoload
php artisan optimize

回答by Murwa

I had a weird issue as well: with deferred providers, until I saw this

我也有一个奇怪的问题:延迟提供者,直到我看到这个

To defer the loading of a provider, set the defer property to true and define a provides method. The provides method returns the service container bindings that the provider registers:

要延迟提供程序的加载,请将 defer 属性设置为 true 并定义提供方法。提供方法返回提供者注册的服务容器绑定:

Laravel Documentation

Laravel 文档

回答by Attila Fulop

In case your ServiceProvider class implements the boot()method, make sure you're invoking the parent::boot()method as well.

如果您的 ServiceProvider 类实现了该boot()方法,请确保您也在调用该parent::boot()方法。

At least in my case (Laravel 5.3.6) the missing parent::boot()has prevented the service provider from booting properly.

至少在我的情况下(Laravel 5.3.6),缺少的东西parent::boot()阻止了服务提供者正确启动。