作曲家更新 Laravel 5.4 & PHP 7 "Class Name must be a valid object or a string"

Composer Update with Laravel 5.4 & PHP 7 "Class Name must be a valid object or a string"

因此,有几个主题与此有关,但 none 存在完全相同的问题。基本上,我从 5.1 升级到 php 5.4,从 5.6 升级到 php 7,我现在收到此错误消息。

PHP Fatal error:  Uncaught Error: Class name must be a valid object or a string in /var/www/dev1/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php:96

我觉得这很奇怪的原因是错误出在实际的 laravel 文件中,而不是在我的应用程序中/我编辑的东西中。当我 运行 作曲家更新或每当我尝试访问我的任何网页时,都会发生此错误。以下是作曲家更新的完整转储,有什么想法吗?

[root@dev1 dev1]# composer update
> php artisan clear-compiled
PHP Fatal error:  Uncaught Error: Class name must be a valid object or a string in /var/www/dev1/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php:96
Stack trace:
#0 [internal function]: Illuminate\Foundation\Exceptions\Handler->Illuminate\Foundation\Exceptions\{closure}(0, 'Symfony\Compone...')
#1 /var/www/dev1/bootstrap/cache/compiled.php(6207): call_user_func(Object(Closure), 0, 'Symfony\Compone...')
#2 /var/www/dev1/bootstrap/cache/compiled.php(12223): Illuminate\Support\Arr::first(Array, Object(Closure), NULL)
#3 /var/www/dev1/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(97): Illuminate\Support\Collection->first(Object(Closure))
#4 /var/www/dev1/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(61): Illuminate\Foundation\Exceptions\Handler->shouldntReport(Object(ReflectionException))
#5 /var/www/dev1/app/Exceptions/Handler.php(33): Illuminate\Foundation\Exceptions\Handler->report(Object(ReflectionException))
#6 /var/www/dev1/vendor/laravel/fram in /var/www/dev1/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php on line 96
Script php artisan clear-compiled handling the pre-update-cmd event returned with error code 255

我在升级到 Laravel 5.4 时遇到了类似的错误。问题是 Laravel 仍在加载 bootstrap/cache/compiled.php(即使它说它不再被框架使用)。删除文件将解决您的问题。

From the docs:

If it exists, you may delete the bootstrap/cache/compiled.php file. It is no longer used by the framework.

php artisan cache:clear

php artisan clear-compiled 

sudo composer dump-autoload