我在 app / Console /
中的 Kernel.php 中安排了这些命令protected function schedule(Schedule $schedule)
{
$schedule->command('inspire')->everyMinute();
$schedule->command("trustpilot:send")->everyMinute();
$schedule->command("run:status")->everyFiveMinutes();
}
当我运行 php artisan schedule:run 时,我收到此消息:
没有计划的命令可以运行。
这很奇怪,因为如果我转储 $ schedule-> dueEvents($ this-> app),我会得到一个包含事件启发和的列表trustpilot:发送。
我尝试将 dueEvents 列表转储到 /vendor/laravel/framework/src/Illuminate/Console/Scheduling/ScheduleRunCommand.php 中,但在此列表中是空的??
/**
* Execute the console command.
*
* @return void
*/
public function handle()
{
dd($this->schedule->dueEvents($this->laravel)); <---- EMPTY?
foreach ($this->schedule->dueEvents($this->laravel) as $event) {
if (! $event->filtersPass($this->laravel)) {
continue;
}
.....
以前有没有人经历过?
答案 0 :(得分:0)
我明白了!
在我的应用程序的启动命令中,我执行了以下操作:
Artisan::call('....');
它会覆盖旧的调度程序实例,这就是为什么dueEvent列表为空的原因。
我删除了行,然后工作了:)