laravel custom命令未列出

时间:2015-02-06 17:49:33

标签: php laravel artisan

我创建了一个名为confirmUserCommand的自定义命令,其文件名与类名匹配(相同的情况)。 $ name设置为confirmuser

运行命令php artisan list会在我的本地显示新命令,但不会在服务器(运行linux)上显示。我确实执行了一个composer dump-autoload并更新了相关的作曲家文件无济于事。

有什么建议吗?

4 个答案:

答案 0 :(得分:16)

Laravel 5.2~5.5:

创建你的命令&修改

   protected $signature = 'order:check'; //or whatever you want your command to be

您必须找到创建命令的位置&编辑app\Console\kernel.php文件。

下的

文件中

protected $commands = [
    \App\Console\Commands\OrderCheck::class,
]

再次跑步

 php artisan list 

应该在那里列出:)

答案 1 :(得分:1)

撕掉我的头发,发现问题..

为了列出包括自定义命令在内的工匠命令,您必须调用系统PHP CLI Intepreter,特别是PHP调用。

php artisan list:将按预期列出所有命令,但不会列出您创建的自定义命令

php-cli artisan list:这将列出所有命令,包括创建的自定义命令

希望这可以帮助某人并保存他们的头发:)

答案 2 :(得分:0)

从laravel 5.6版开始,您无需在kernel.php中输入自定义命令。

答案 3 :(得分:-1)

为了使它出现在php artisan列表中,你需要将它添加到app / http / Kernel.php文件中,具体在命令数组中:

 protected $commands = [
   'App\Console\CreateSlugsCommand',....
];

执行此操作后,您可以在控制台php artisan list中运行,您将看到自定义命令。