У меня есть файл класса "Ajuste.php":
<? // src/App/Entity/Ajuste.php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use App\SuperClass\Documento as Documento;
use Doctrine\Common\Collections\ArrayCollection;
/** @ORM\Entity */
class Ajuste extends Documento
{
/**
* @Id
* @Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
* */
private $id;
/** @ORM\Column(type="string") */
private $name;
...more fields and methods
}
Суперкласс "Documento.php" находится в другой папке:
<? // src/SuperClass/Documento.php
namespace App\SuperClass;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\MappedSuperclass
* */
class Documento
{
/** @ORM\Column(type="DateTime") */
protected $fecha_emision;
/** @ORM\Column(type="DateTime") */
protected $fecha_registro;
...more fields and methods
}
services.yaml is:
[...]
services:
# default configuration for services in *this* file
_defaults:
autowire: true # Automatically injects dependencies in your services.
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.
# makes classes in src/ available to be used as services
# this creates a service per class whose id is the fully-qualified class name
App\:
resource: '../src/*'
exclude: '../src/{Entity,Admin,Resources,SuperClass}'
# controllers are imported separately to make sure services can be injected
# as action arguments even if you don't extend any base controller class
App\Controller\:
resource: '../src/Controller'
tags: ['controller.service_arguments']
[...]
Проблема начинается, когда я пытаюсь php bin/console make:migration
или php bin/console doctrine:schema:validate
.Ошибка:
In DebugClassLoader.php line 204:
The autoloader expected class "App\SuperClass\Documento" to be defined in file "[more dirs]../src/SuperClass/Documento.php". The file was found but the class was not in it, the class name or namespace probably has a typo.`
Дело в том, что я не могу заставить его работать, ошибка продолжает появляться, даже если я удаляю каталог «SuperClass» из списка исключений в службах (в этом случае ошибкавсе еще там и также указывает на опечатку в services.yaml), но я думаю, что это должно быть что-то с изменениями в Symfony 4, и, кажется, я не могу понять это.Заранее спасибо.
Редактировать : Скриншот структуры каталогов, на всякий случай.(https://imgur.com/a/PNnn3mR)
Редактировать : добавлен раздел автозагрузки Composer:
"autoload": {
"psr-4": {
"App\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"App\\Tests\\": "tests/"
}
},