web-dev-qa-db-ja.com

Container.php行741のReflectionException:クラスビューが存在しません

HomesteadでLaravel 5.1プロジェクトに取り組んでいます。Vagrantマシンにシェルインし、Composer Updateコマンドを実行して、自分の更新を試みました。プロジェクトを実行すると、次のエラーが発生します。

    1. in Container.php line 741
    2. at ReflectionClass->__construct('view') in Container.php line 741
    3. at Container->build('view', array()) in Container.php line 631
    4. at Container->make('view', array()) in Application.php line 674
    5. at Application->make('Illuminate\Contracts\View\Factory') in Container.php line 842
    6. at Container->resolveClass(object(ReflectionParameter)) in Container.php line 805
    7. at Container->getDependencies(array(object(ReflectionParameter)), array()) in Container.php line 776
    8. at Container->build('Illuminate\View\Middleware\ShareErrorsFromSession', array()) in Container.php line 631
    9. at Container->make('Illuminate\View\Middleware\ShareErrorsFromSession', array()) in /home/vagrant/Sites/laravel-basics/vendor/laravel/framework/src/Illuminate/Foundation/Application.php line 674
   10. at Application->make('Illuminate\View\Middleware\ShareErrorsFromSession') in Pipeline.php line 123
   11. at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in StartSession.php line 62
   12. at StartSession->handle(object(Request), object(Closure))
   13. at call_user_func_array(array(object(StartSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
   14. at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37
   15. at AddQueuedCookiesToResponse->handle(object(Request), object(Closure))
   16. at call_user_func_array(array(object(AddQueuedCookiesToResponse), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
   17. at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in EncryptCookies.php line 59
   18. at EncryptCookies->handle(object(Request), object(Closure))
   19. at call_user_func_array(array(object(EncryptCookies), 'handle'),  array(object(Request), object(Closure))) in Pipeline.php line 124
   20. at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in CheckForMaintenanceMode.php line 44
   21. at CheckForMaintenanceMode->handle(object(Request), object(Closure))
   22. at call_user_func_array(array(object(CheckForMaintenanceMode), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124
   23. at Pipeline->Illuminate\Pipeline\{closure}(object(Request))
   24. at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103
   25. at Pipeline->then(object(Closure)) in Kernel.php line 122
   26. at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 87
   27. at Kernel->handle(object(Request)) in index.php line 54

何が壊れたのかわかりません。私はすでにLaravel 5.1とComposerは問題なく動作していました。私には、2つの基本的なオプションがあると感じています。1)元に戻してみてください。以前のバージョンのComposerまたは2)は、以前のバージョンのプロジェクトに戻ります。ただし、これに対するより簡単な修正はありますか?

9
MikeAguilera210

config/app.phpファイルのプロバイダーのリストにIlluminate\View\ViewServiceProviderがリストされていることを確認してください。

どうやらコンテナにはviewサービスがなく、これがそれを設定するために提供されたものです。

6
jedrzej.kurylo

このエラーメッセージが2回発生したので、将来グーグルで検索する必要がある場合に備えて、ここに解決策を示します。

このエラーは、「/ bootstrap/cache」ディレクトリが書き込み可能でないために発生することがあります。したがって、ビューをコンパイルすることはできません。解決策は、そのディレクトリをchmodして、書き込み可能なようにすることです。

出来上がり。どういたしまして、フューチャーミー。

28
Jordan Lapp

同じ問題があったので、運が悪かったので上記の解決策を試しました。 composer dump-autoloadを実行した後、本番サーバーにまだロードされていない開発サーバーにセットアップしたパッケージ(Laravel Excel)をインストールするのを忘れたことが原因であることがわかりました。

0
Dylan Glockler

プロジェクトの名前空間を更新した後、同じ問題が発生しました。私はcomposer.jsonファイルを更新する必要がありました:

 "psr-4": {
        "App\\": "myforms/app/"
    } 

に:

 "psr-4": {
        "App\\": "app/"
    }

サーバーのソースディレクトリで、composer update、次にcomposer dump-autoloadを実行します。

0
Jeremy Quick

私の場合、ファイルの名前が正しくありませんでした。クラスは次のように宣言されました:

class NoSessionAccessMiddleware {

しかし、ファイルの名前はNoSessionAccess.phpでした。ファイルの名前をNoSessionAccessMiddleware.phpに変更したところ、問題が修正されました。

0
Haris ur Rehman