错误 [RuntimeException] 无法扫描“数据库/种子”内的类

jer*_*sas 3 php laravel composer-php

我在运行作曲家更新时遇到问题

其他安装命令也会发生同样的情况

错误:

[RuntimeException] 无法扫描“数据库/种子”内的类,该类似乎既不是文件也不是文件夹

我该如何解决这个错误?尝试运行composer install,它也不起作用

{
"name": "laravel/laravel",
"type": "project",
"description": "The Laravel Framework.",
"keywords": [
    "framework",
    "laravel"
],
"license": "MIT",
"require": {
    "php": "^7.2.5",
    "fideloper/proxy": "^4.2",
    "fruitcake/laravel-cors": "^1.0",
    "guzzlehttp/guzzle": "^6.3",
    "laravel/framework": "^7.0",
    "laravel/tinker": "^2.0",
    "laravel/ui": "^2.0"
},
"require-dev": {
    "facade/ignition": "^2.0",
    "fzaninotto/faker": "^1.9.1",
    "mockery/mockery": "^1.3.1",
    "nunomaduro/collision": "^4.1",
    "phpunit/phpunit": "^8.5"
},
"config": {
    "optimize-autoloader": true,
    "preferred-install": "dist",
    "sort-packages": true
},
"extra": {
    "laravel": {
        "dont-discover": []
    }
},
"autoload": {
    "psr-4": {
        "App\\": "app/"
    },
    "classmap": [
        "database/seeds",
        "database/factories"
    ]
},
"autoload-dev": {
    "psr-4": {
        "Tests\\": "tests/"
    }
},
"minimum-stability": "dev",
"prefer-stable": true,
"scripts": {
    "post-autoload-dump": [
        "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
        "@php artisan package:discover --ansi"
    ],
    "post-root-package-install": [
        "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
    ],
    "post-create-project-cmd": [
        "@php artisan key:generate --ansi"
    ]
}
}
Run Code Online (Sandbox Code Playgroud)

小智 10

将作曲家自动加载更改为

"autoload": {
        "psr-4": {
            "App\\": "app/",
            "Database\\Factories\\": "database/factories/",
            "Database\\Seeders\\": "database/seeders/"
        }
    }
Run Code Online (Sandbox Code Playgroud)

在 Laravel 8 中,Factory 和 seeders 两个目录都有命名空间。在 Laravel 7 中,它仍然使用类映射来加载它们。

首先,检查您的类是否使用命名空间,然后使用 psr4 自动加载,否则您可以使用类映射;