【问题标题】:Artisan says class name not defined, even though it is?工匠说没有定义类名,即使它是?
【发布时间】:2016-02-04 21:33:30
【问题描述】:

我在 Laravel 中创建了以下 Artisan 命令:

class draft_cron extends Command {

    /**
     * The console command name.
     *
     * @var string
     */
    protected $name = 'draft_cron';
    //etc

我在start/artisan.php 中添加了:

Artisan::add(new draft_cron);

但是,当我尝试运行该命令时,我收到一条错误消息,指出 Class 'draft_cron' not found 并从 start/artisan.php 指向上述行。

任何想法可能是什么问题?

【问题讨论】:

    标签: laravel laravel-4 laravel-artisan


    【解决方案1】:

    最有可能的罪魁祸首是 PSR 无法确定类在哪里,您使用 snake_case 而不是 StudlyCase 有什么特别的原因吗?

    【讨论】:

      【解决方案2】:

      2 件事:1 是用户 RDelorier 所说的。 DraftCron 而不是 draft_cron。另一件事是,你做了composer dump-autoload吗?

      【讨论】:

      • 将 draft_cron 更改为 DraftCron 后,我仍然遇到相同的错误。但是,在执行转储自动加载后,我收到错误 command DraftCron is not defined
      • 你改变了 Artisan::add(new draft_cron);对于 Artisan::add(new DraftCron);?
      • 是的,在转储自动加载之前我做到了。
      • mm 只是回顾一下,你编辑了文件名,命令中的类名,用新名称和 dump-autoload 修改了 artisan add 方法?
      • 是的,由于某种原因修复了它。
      猜你喜欢
      • 2016-08-09
      • 1970-01-01
      • 1970-01-01
      • 2020-08-25
      • 1970-01-01
      • 2014-01-25
      • 2020-02-25
      • 1970-01-01
      • 2011-03-25
      相关资源
      最近更新 更多