Laravel时间表:运行不起作用

时间:2017-01-04 04:39:50

标签: laravel-5 command laravel-scheduler

我正在尝试使用Laravel schedule命令运行一些后台进程来发送邮件和获取电子邮件。当我使用artisan单独运行这些命令时,它们都会运行,但是当我尝试运行shcedule:run命令来运行这些命令时 它显示“没有预定的命令准备好运行。”

我试图寻找答案,但没有任何效果。所以我尝试通过运行简单的命令并检查输出来纠正问题。 下面是我的kernal.php

<?php
namespace App\Console;
use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
class Kernel extends ConsoleKernel
{
    /**
     * The Artisan commands provided by your application.
     *
     * @var array
     */
    protected $commands = [
         Commands\Inspire::class,
    ];
    /**
     * Define the application's command schedule.
     *
     * @param  \Illuminate\Console\Scheduling\Schedule  $schedule
     * @return void
     */
    protected function schedule(Schedule $schedule)
    {
         $schedule->command('inspire')
                  ->everyMinute();
         dd($schedule);
    }
}

当我运行计划时:运行它会显示此输出。

Bhanu-Slathias-MacBook-Pro:Faveo-Helpdesk-Pro-bhanu-fork vijaysebastian$ php artisan schedule:run
    Illuminate\Console\Scheduling\Schedule {#54
      #events: array:1 [
        0 => Illuminate\Console\Scheduling\Event {#1663
          +command: "'/Applications/AMPPS/php-5.6/bin/php' 'artisan' inspire"
          +expression: "* * * * * *"
          +timezone: null
          +user: null
          +environments: []
          +evenInMaintenanceMode: false
          +withoutOverlapping: false
          +runInBackground: false
          #filters: []
          #rejects: []
          +output: "/dev/null"
          #shouldAppendOutput: false
          #beforeCallbacks: []
          #afterCallbacks: []
          +description: null
        }

但是当我在schedule()函数中删除dd()时输出为

  

没有预定的命令可以运行。

任何人都可以帮助我并告诉我我做错了什么。

1 个答案:

答案 0 :(得分:1)

storage/framework文件夹中查看schedule-d71c52cd9f206ba2359601745a5ad13d51fa7ca6

等文件

如果有的话 - 删除它们并尝试再次运行schedule:run命令。