Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

mariohbrino's avatar

Package composer psr-4 autoload class not found

Please can someone help?

I want to make a package test, I did create a composer package dependency. The error message when I import it to my project is Class 'Footer\Foo' not found.

  • Package create test

I did put this dependency into my vendor and run:

    composer dump-autoload

Folder structure

    .
    ├── ...
    ├── vendor
    |   ├── mariohbrino
    |       ├── footer
    |           ├── src
    |               ├── classes
    |                   ├── Whatever.php
    |               Foo.php
    |       ├── composer.json

src\classes\Whatever.php

<?php

namespace Footer\Classes;

class Whatever
{
    public function build(){
        echo 'called';
    }
}

src\Foo.php

<?php

namespace Footer;

use Footer\Classes\Whatever;

class Foo extends Whatever
{
    public function __construct()
    {
        $this->build();
    }
}

composer.json

{
  "name": "mariohbrino/footer",
  "type": "library",
  "description": "Package test",
  "homepage": "http://github.com/mariohbrino/footer",
  "keywords": ["Package", "Test"],
  "license": "MIT",
  "minimum-stability": "dev",
  "authors": [
    {
      "name": "",
      "email": ""
    }
  ],
  "require": {
    "php": ">=5.5.0"
  },
  "autoload": {
    "psr-4": {
      "Footer\\": "src/"
    }
  }
}
0 likes
1 reply
mariohbrino's avatar
mariohbrino
OP
Best Answer
Level 40

I found my mistake, my path was wrong.

Wrong: "scr/"

"autoload": {
    "psr-4": {
      "Footer\": "scr/"
    }
  }

Correct: "src/"

"autoload": {
    "psr-4": {
      "Footer\": "src/"
    }
  }

Please or to participate in this conversation.