2016-04-11 4 views
1

Файл autoload_psr4.php не содержит пространство имен из раздела «autoload-dev» только из раздела «автозагрузка».Composer autoload-dev не работает

Когда мой composer.json читает

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

И я бегу

composer require vendor/namespace 1.0-dev 

Мой файл /vendor/composer/autoload_prs4.php появляется как

// autoload_psr4.php @generated by Composer 

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

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

Спасибо!

ответ

2

Я предполагаю, что вы показываете composer.json пакета vendor/namespace. Если это так:

Посмотрите на the docs. В нем говорится: «autoload-dev (только корень)». root означает, что он применяется только к корневому пакету. Когда вы включили пакет, указанный файл composer.json не является корневым пакетом, поэтому раздел autoload-dev игнорируется.

Смежные вопросы