php - Laravel 5 播种器类不存在

标签 php laravel-5 composer-php

我有一个全新的 Laravel 安装。我已经从 github 存储库中移出了代码,该存储库是一个 Laravel 项目,相同版本 (5.3)。

一切正常,除了由于某些原因数据库种子无法运行。

例如,我可以在新安装的 Laravel 中从 github 加载的迁移进行迁移,就像我在首先将迁移推送到 github 的服务器上所做的那样。

但是我不能执行 php artisan db:seed,这意味着我漂亮的小数据库是空的! >:(

我得到:ReflectionException 类不存在

我尝试过的:

  1. php artisan 优化
  2. php artisan clear:cache
  3. Composer 清除缓存
  4. Composer 转储自动加载

这些都没有解决我的问题。 DatabaseSeeder 中的所有内容都拼写正确并且类 - 确实 - 存在,它们在我的其他服务器上工作正常,再次,这个全新安装现在具有与我的源服务器相同的所有文件,感谢 Github。

数据库播种器.php:

<?php

use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        $this->call(UserTableSeeder::class);
    }
}

编辑 - 堆栈跟踪:

2017-06-14 19:11:00] local.ERROR: ReflectionException: Class UserTablesSeeder does not exist in /var/www/laravel/vendor/laravel/framework/src/Illuminate/Container/Container.php:749
Stack trace:
#0 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Container/Container.php(749): ReflectionClass->__construct('UserTablesSeede...')
#1 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Container/Container.php(644): Illuminate\Container\Container->build('UserTablesSeede...', Array)
#2 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(709): Illuminate\Container\Container->make('UserTablesSeede...', Array)
#3 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(55): Illuminate\Foundation\Application->make('UserTablesSeede...')
#4 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Database/Seeder.php(43): Illuminate\Database\Seeder->resolve('UserTablesSeede...')
#5 /var/www/laravel/database/seeds/DatabaseSeeder.php(14): Illuminate\Database\Seeder->call('UserTablesSeede...')
#6 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(63): DatabaseSeeder->run()
#7 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php(2292): Illuminate\Database\Console\Seeds\SeedCommand->Illuminate\Database\Console\Seeds\{closure}()
#8 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Database/Console/Seeds/SeedCommand.php(64): Illuminate\Database\Eloquent\Model::unguarded(Object(Closure))
#9 [internal function]: Illuminate\Database\Console\Seeds\SeedCommand->fire()
#10 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Container/Container.php(508): call_user_func_array(Array, Array)
#11 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Console/Command.php(169): Illuminate\Container\Container->call(Array)
#12 /var/www/laravel/vendor/symfony/console/Command/Command.php(261): Illuminate\Console\Command->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#13 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Console/Command.php(155): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#14 /var/www/laravel/vendor/symfony/console/Application.php(817): Illuminate\Console\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#15 /var/www/laravel/vendor/symfony/console/Application.php(185): Symfony\Component\Console\Application->doRunCommand(Object(Illuminate\Database\Console\Seeds\SeedCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#16 /var/www/laravel/vendor/symfony/console/Application.php(116): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#17 /var/www/laravel/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php(121): Symfony\Component\Console\Application->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#18 /var/www/laravel/artisan(35): Illuminate\Foundation\Console\Kernel->handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#19 {main}  

最佳答案

尝试运行

composer dump-autoload

特别是如果您最近编辑了种子文件的名称

关于php - Laravel 5 播种器类不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44552964/

相关文章:

php - Laravel 5.6 中如何打印表格数据?

php - 拉拉新;应用程序已经存在错误

javascript - 智能解析字符串构建复杂的api调用

php - HTML 公式 : MySQL or PHP?

php - Laravel/Lumen - Artisan 控制台中缺少命令

php - Composer,从/vendor/文件夹移动文件

php - 如何纠正 Composer 的 [Composer\Downloader\TransportException] 错误

php - MySQL 中的数据透视表未正确返回

php - 在 nginx 中从 robots.txt 重定向到 robots.php

php - Laravel Backpack - Eloquent 试图在数据库列重命名后将数据插入错误的列名