找不到composer ps4类



我有以下文件结构:

  • ajon/
    • 项目/
      • src/
        • 子项目1/
          • index.php
          • composer.json
        • 子项目2/
          • composer.json

在我的composer.json中,我有:

"psr-4": {
   "ajon\project\subproject1\": "src/subproject1/",
   "ajon\project\subproject2\": "src/subproject2/"
}

在子项目1中,我有Models/Foo.php,它看起来像:

namespace ajonprojectsubproject1Models;
class Foo { ... }

在子项目1/index.php中,我有:

require_once 'vendor/autoload.php';
use ajonprojectsubproject1ModelsFoo;

我得到:

Class 'ajonprojectsubproject1ModelsFoo' not found.
  • 作曲家会在正确的文件夹中查找namespace ajonprojectsubproject1,然后知道从那里查找ModelsFoo吗?

  • 我做错什么了吗?

  • 有更好的方法吗

我想明白了。事实证明,psr-4指令与composer.json文件所在的位置有关。

我将composer.json设置为:

"psr-4": { "ajon\project\subproject1\": "./" }

而且效果很好。

相关内容

  • 没有找到相关文章