类 Database\Seeds\PermissionsTableSeeder 不存在

OPV*_*OPV 1 laravel laravel-5 laravel-5.8

我已经签出,类PermissionsTableSeeder按路径存在:Database\Seeds\PermissionsTableSeeder

另外,我试过:

composer dump-autoload

php artisan cache:clear
Run Code Online (Sandbox Code Playgroud)

当我运行命令时:php artisan db:seed它给了我一个例外:

ReflectionException : Class Database\Seeds\PermissionsTableSeeder 不存在

在 C:\Projects\secure_secure\vendor\laravel\framework\src\Illuminate\Container\Container.php:790 786| if ($concrete instanceof Closure) { 787| 返回 $concrete($this, $this->getLastParameterOverride()); 788| 第789话

790| $reflector = new ReflectionClass($concrete); 791| 第792话 // 如果类型不可实例化,则开发人员正在尝试解析 793| // 抽象类型,如接口或抽象类,有 794| // 没有为抽象注册绑定,所以我们需要退出。

异常跟踪:

1
ReflectionClass::__construct("Database\Seeds\PermissionsTableSeeder") C:\Projects\secure_secure\vendor\laravel\framework\src\Illuminate\Container\Container.php:790

2
Illuminate\Container\Container::build("Database\Seeds\PermissionsTableSeeder") C:\Projects\secure_secure\vendor\laravel\framework\src\Illuminate\Container\Container.php:667

如何解决?

dpa*_*oli 7

laravel 中没有Database\Seeds\ 命名空间,seeders 默认没有命名空间。

请检查DatabaseSeeder.php你应该有这个功能:

public function run()
{
    .....
    $this->call(PermissionsTableSeeder::class);
}
Run Code Online (Sandbox Code Playgroud)

还要检查您是否没有为类或类提供任何命名空间DatabaseSeederPermissionsTableSeeder

您还应该删除use Database\Seeds以您开头的任何行,DatabaseSeeder.php因为该名称空间不存在。

  • 正如我上面所说,没有“Database\Seeds”命名空间,请注释掉播种器中以“use Database\Seeds”开头的所有行。 (2认同)