My \ NameSpace \ Database \ Seeders \ RoleTableSeeder

问题描述

我的包装中收到不赞成使用的警告,说某些文件不符合psr-4自动加载标准。

我有一个laravel 8项目,在其中加载我的包。当我在laravel目录中运行composer update时,会看到以下消息:

弃用声明:位于./vendor/my/name-space/src/database/seeders/RoleTableSeeder.PHP中的类My \ NameSpace \ Database \ Seeders \ RoleTableSeeder不符合psr-4自动加载标准。在Composer v2.0中将不再自动加载。在phar:///usr/local/bin/composer/src/Composer/Autoload/ClassMapGenerator.PHP:201

my/name-space/src/Database/Seeders/RoleTableSeeder.PHP

<?PHP

namespace My\NameSpace\Database\Seeders;

use Illuminate\Database\Seeder;
use Spatie\Permission\Models\Role;

class RoleTableSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        if ( ! Role::query()->where('name','=','Administrator')->exists()) {
            \Artisan::call('permission:create-role Administrator web');
        }

        if ( ! Role::query()->where('name','User')->exists()) {
            \Artisan::call('permission:create-role User web');
        }
    }
}

我已经读过autoloading standard,但我并没有真正发现问题所在。我还有许多其他文件未给出此错误,它们具有相同的目录结构和文件命名。

composer.lock

{
            "name": "my/name-space","version": "dev-master","source": {
                "type": "git","url": "git@url.git","reference": "039df11c86dc77e04830293982ba9415f688885b"
            },"require": {
                "barryvdh/laravel-ide-helper": "^2.5","ext-json": "*","guzzlehttp/guzzle": "^7.0.*","keboola/csv": "^2.0","laravel/jetstream": "^1.2","PHP": "^7.4","spatie/laravel-permission": "^3.17.0","wapmorgan/unified-archive": "^0.1.2"
            },"require-dev": {
                "illuminate/auth": "8.*","illuminate/bus": "8.*","illuminate/console": "8.*","illuminate/filesystem": "8.*","illuminate/routing": "8.*","illuminate/support": "8.*","illuminate/validation": "8.*","illuminate/view": "8.*","roave/security-advisories": "dev-master","symfony/finder": "5.*"
            },"type": "library","extra": {
                "laravel": {
                    "providers": [
                        "\\My\\NameSpace\\ServiceProvider"
                    ]
                }
            },"autoload": {
                "classmap": [
                    "src/Controllers"
                ],"psr-4": {
                    "My\\NameSpace "src/"
                }
            },"license": [
                "MIT"
            ],"authors": [
                {
                    "name": "name here","email": "e@mail.nl","homepage": "https://url.nl","role": "company"
                }
            ],"description": "Default admin panel","time": "2020-09-22T12:22:57+00:00"
        },

composer.json

    "autoload": {
        "psr-4": {
            "App\\": "app/","Database\\Factories\\": "database/factories/","Database\\Seeders\\": "database/seeders/"
        }
    },"autoload-dev": {
        "psr-4": {
            "Tests\\": "tests/"
        }
    },

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...