繁体   English   中英

如何在子文件夹中添加Laravel命令?

[英]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\\MyCommandApp\\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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM