Laravel 5.1 到 5.2 composer 更新错误

Laravel 5.1 to 5.2 composer update error

每当我尝试 运行 作曲家更新时,我现在都会收到一个错误,其根本原因如下

调用未定义的方法Illuminate\Bus\Dispatcher::mapUsing()

我可以确认 Laravel 5.2 已正确安装,所有其他依赖项也是如此。仅当 php artisan clear-compiled 为 运行.

时才会发生这种情况

我还根据几个小时前在 Laracasts 论坛上的建议更新了我的基本控制器

use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;

abstract class Controller extends BaseController
{
    use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
}

但我仍然收到错误

更新:只要应用程序完全启动,就会发生这种情况。我的应用现在甚至 运行。

更新 2,完整堆栈跟踪:

PHP Fatal error:  Call to undefined method Illuminate\Bus\Dispatcher::mapUsing() in /Users/Zara/Web/cafe/app/Providers/BusServiceProvider.php on line 16
PHP Stack trace:
PHP   1. {main}() /Users/Zara/Web/cafe/artisan:0
PHP   2. Illuminate\Foundation\Console\Kernel->handle() /Users/Zara/Web/cafe/artisan:36
PHP   3. Illuminate\Foundation\Console\Kernel->bootstrap() /Users/Zara/Web/cafe/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:105
PHP   4. Illuminate\Foundation\Application->bootstrapWith() /Users/Zara/Web/cafe/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:208
PHP   5. Illuminate\Foundation\Bootstrap\BootProviders->bootstrap() /Users/Zara/Web/cafe/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:203
PHP   6. Illuminate\Foundation\Application->boot() /Users/Zara/Web/cafe/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/BootProviders.php:17
PHP   7. array_walk() /Users/Zara/Web/cafe/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:718
PHP   8. Illuminate\Foundation\Application->Illuminate\Foundation\{closure}() /Users/Zara/Web/cafe/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:718
PHP   9. Illuminate\Foundation\Application->bootProvider() /Users/Zara/Web/cafe/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:717
PHP  10. Illuminate\Container\Container->call() /Users/Zara/Web/cafe/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:734
PHP  11. call_user_func_array:{/Users/Zara/Web/cafe/vendor/laravel/framework/src/Illuminate/Container/Container.php:507}() /Users/Zara/Web/cafe/vendor/laravel/framework/src/Illuminate/Container/Container.php:507
PHP  12. Cafe\Providers\BusServiceProvider->boot() /Users/Zara/Web/cafe/vendor/laravel/framework/src/Illuminate/Container/Container.php:507



  [Symfony\Component\Debug\Exception\FatalErrorException]
  Call to undefined method Illuminate\Bus\Dispatcher::mapUsing()

来自Laravel 5.2升级指南

Separate Commands & Handlers

The Laravel 5.2 command bus now only supports self-handling commands and no longer supports separate commands and handlers.

If you would like to continue using separate commands and handlers, you may install a Laravel Collective package which provides backwards-compatible support for this: https://github.com/LaravelCollective/bus

不再支持非自处理命令,这是映射器的用途;将命令映射到处理程序。

检查服务提供商

检查您注册的所有服务提供商,确保他们没有在调度程序上调用该方法。如果问题仍然存在,您可以尝试检查任何包裹服务提供商,以确保他们没有调用该方法。