Laravel Schedule命令不起作用

我在我的项目中使用了laravel 5。 我想创build一个插入用户的调度器。 在kernel.php中,我把我的代码,并设置调度。

在这里输入图像说明

我创build了一个名为“InsertUser”的命令类,并把它放在kernel.php $ commandsvariables中。

在这里输入图像说明

命令行中,我运行了“php artisan schedule:run”。 但是我发现“没有预定的命令可以运行”。 如果我使用通话function,而不是命令function(在lernel.php),它工作正常。 请帮帮我。

Laravel Scheduler需要一个运行php artisan schedule:run的cron作业php artisan schedule:run定期php artisan schedule:run命令,然后依次评估任何预定的命令并相应地运行它们。

从您的屏幕截图中我看到您正在运行Windows,这意味着您不能使用文档中的“ 启动计划程序”部分中的作业代码片段,因为Windows上没有cron 。 Windows没有正式支持任务调度程序,因为这一点,没有在文档中找到它的说明。


然而,你可以通过创建一个批处理文件,比如说scheduler.bat来解决这个问题,它有以下内容:

 cd c:\lamp\www\larasoft php artisan schedule:run 1>> NUL 2>&1 

然后,您可以添加一个Windows 计划任务来每分钟运行该文件。

Windows不支持Laravel Scheduler,但是,您必须自己多次运行该命令。 因为我们不能像使用linux crontab那样使用Windows任务计划程序每运行1分钟。 如果你正在使用Windows开发环境,并想测试命令是否工作,你可以试试这个

如果你运行

PHP的工匠时间表:运行

命令多次通过给每个审判将工作的最小差距。

在这里输入图像说明

如果你想直接运行命令,你可以按照这个。

“path \ to \ php.exe”“artisan”YourCommand>“NUL”2>&1&

在你的情况

  1. 在命令提示符下运行“php.exe”

  2. 复制php的位置

  3. “paste \ your \ php \ location”“artisan”InsertUser>“NUL”2>&1&