[英]How do I add a Laravel command in a subfolder?
所以我试图在Laravel 5.1中创建一个自定义控制台命令,它为我的项目做了一些有用的功能。 将console命令放在基本命令文件夹中的文件中时,我可以做到这一点,但是当我只是添加一个子目录时。
'App\Console\Commands\SomeCustomCommandThatWorks',
'App\Console\Commands\MySubNameSpace\CustomCommandThatFails',
那么如何添加我的命令,如MySubNameSpace\\Command
?
命名空间似乎对此没有任何影响。 如果文件位于'App\\Console\\Commands\\MySubNameSpace\\MyCommand'
,则命令的命名空间可能是App\\Console\\MySubNameSpace\\MyCommand
或App\\Console\\MyCommand
都会失败。 如果位于带有命名空间App\\Console\\MySubNameSpace\\MyCommand
'App\\Console\\Commands\\MyCommand'
,该文件也会失败。
现在我收到这个错误。
Class App\Console\Commands\DeletePhantomServers does not exist
我试过运行composer dumpautoload但没有成功。
根据自动加载标准,您上面的组合都不会起作用。 需要根据目录设置命名空间。 因此,如果您在此文件夹中有命令
Console\Commands\MySubNameSpace\MyCommand
你的命名空间必须是
App\Console\Commands\MySubNameSpace\MyCommand
我一定很累。 在阅读了迈克尔的回答之后,我查看了命名空间并意识到我只是简单地写错了。
我在放
namespace App\Console\Commands\MySubNameSpace\MyCommand;
class MyCommand ...
我需要放的地方
namespace App\Console\Commands\MySubNameSpace;
class MyCommand ...
谢谢你的帮助:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.