Command is not defined exception

Laravel 5.5+

https://laravel.com/docs/5.5/artisan#registering-commands

If you'd like, you can continue manually registering your commands. But L5.5 gives you the option to lazy load them. If you are upgrading from an older version add this method to your Kernel:

/**
 * Register the commands for the application.
 *
 * @return void
 */
protected function commands()
{
    $this->load(__DIR__ . '/Commands');

    require base_path('routes/console.php');
}

Laravel 5

http://laravel.com/docs/5.4/artisan#registering-commands

Edit your app/Console/Kernel.php file and add your command to the $commands array:

protected $commands = [
    Commands\NeighborhoodCommand::class,
];

Laravel 4

http://laravel.com/docs/4.2/commands#registering-commands

Add this line to app/start/artisan.php:

Artisan::add(new NeighborhoodCommand);

By changing signature in your command class to your commandName. change

protected $signature = 'command:name';

TO

protected $signature = 'NeighborhoodCommand';

Now try to run

$ php artisan NeighborhoodCommand

It works for me.

Reference