文件autoload_psr4.php不包含来自“autoload dev”部分的名称空间,而只包含来自“autoload”部分的名称空间。
当我的composer.json读取

"autoload": {
    "psr-4": {
        "Namespace\\": "src/"
    }
},
"autoload-dev": {
    "prs-4": {
        "Namespace\\Tests\\": "tests/"
    }
}

我跑
composer require vendor/namespace 1.0-dev

my/vendor/composer/autoload_prs4.php文件显示为
// autoload_psr4.php @generated by Composer

$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir);

return array(
    'Namespace\\' => array($baseDir . '/src'),
);

谢谢!

最佳答案

我猜你展示的是composer.jsonvendor/namespace包。如果是这样的话:
看看the docs。上面写着:“autoload dev(仅限根用户)”。根只表示它只应用于根包。当您包含包时,显示的composer.json文件不是根包,因此将忽略autoload-dev部分。

08-07 09:42