我已经开始学习 Laravel。到现在为止,一切都很完美。我正在关注本教程,但我坚持使用第 7 集。
问题是我不能再开始工匠了。我试图安装 tinker,我可能已经更新了 artisan,所以我最终没有 artisan 和 tinker。我正在使用 Linux Ubuntu 12.04 LTS。我已经通过命令行安装了所有东西。之后我尝试运行:
php工匠--版本
出现以下问题:
[ErrorException]
App\Providers\EventServiceProvider::boot() 的声明应该与 Illuminate\Foundation\Support\Providers\EventServiceProvider::boot
()兼容
这是我的文件的app/Providers/EventServiceProvider.php
样子:
<?php
namespace App\Providers;
use Illuminate\Contracts\Events\Dispatcher as DispatcherContract;
use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider;
class EventServiceProvider extends ServiceProvider
{
/**
* The event listener mappings for the application.
*
* @var array
*/
protected $listen = [
'App\Events\SomeEvent' => [
'App\Listeners\EventListener',
],
];
/**
* Register any other events for your application.
*
* @param \Illuminate\Contracts\Events\Dispatcher $events
* @return void
*/
public function boot(DispatcherContract $events)
{
parent::boot($events);
//
}
}
我正在使用 Laravel 5.2 和我的 composer.json 它看起来像这样:
"php": ">=5.5.9",
"laravel/framework": "5.2.*",
"doctrine/dbal": "^2.6@dev",
"vluzrmos/tinker": "dev-master",
"moon/artisan": "dev-master"
我在这里看到过类似的问题,例如:
https://laracasts.com/discuss/channels/laravel/event-service-provider-in-package
但从来没有直接给出答案,实际上我不明白如何解决这个问题?我需要直接回答,因为我是 Laravel 的新手。可以使用 Linux 命令行以某种方式轻松更新 artisan 以便它可以再次工作吗?