Laravelでサービスプロバイダのキャッシュでちょっと詰まったので、 事象とその時とった解決手段についてまとめました。
gitを使っていて、とあるブランチでHelperというサービスプロバイダを追加。
$ php artisan make:provider HelperServiceProvider
config/app.phpにごにょごにょ追加したりして作業してました。
その後、別のブランチの作業があったのでブランチを 切り替えたところ、以下のようなエラーが発生しました。
Whoops, looks like something went wrong.
FatalThrowableError in ProviderRepository.php line 146:
Class 'App\Providers\HelperServiceProvider' not found
キャッシュクリアのコマンドを打っても意味がなく・・・
$ php artisan cache:clear
[Symfony\Component\Debug\Exception\FatalThrowableError]
Class 'App\Providers\HelperServiceProvider' not found
$ php artisan clear-compiled
[Symfony\Component\Debug\Exception\FatalThrowableError]
Class 'App\Providers\HelperServiceProvider' not found
$
調べてみると、このキャッシュが残っているのがいけないっぽかった。
$ ll bootstrap/cache/
合計 60
-rw-r--r-- 1 vagrant vagrant 47717 12月 7 09:33 config.php
-rw-r--r-- 1 vagrant vagrant 9305 12月 6 10:42 services.php
$
ので、消してみた。
$ rm -rf bootstrap/cache/*
一応コンフィグのキャッシュを作り治してアクセスしてみると・・・
$ APP_ENV=local php artisan config:cache
アクセスできました!よかった!