我的文件结构如下:
├─ vendor/
└─ src/
├─ Acme/
│ ├─ Foul/
│ │ └─ Nest.php
│ └─ Universal.php
└─ Foo.php
我正在尝试使用 Composer 使用 PSR-4 自动加载。这段代码:
$obj = new Acme\Universal();
给我一个错误:Fatal error: Class 'Acme\Universal' not found in ...
如果我在中使用此代码段composer.json
:
"autoload": {
"psr-4": {"Acme\\": "src/"}
}
但是如果我使用
"autoload": {
"psr-4": {"Acme\\": ["src/", "src/Acme/"]}
}
一切正常。我什至可以访问
$otherObj = new Acme\Foul\Nest();
请注意,我composer install
每次更改composer.json
文件时都会运行。