Bonjour,

J'ai ajouté SonataAdminBundle à mon projet Symfony 3.4. Après avoir suivi les indications indiquées sur la documentation officielle, tout marche correctement. Par la suite, j'ai ajouté FOS Bundle pour la gestion des utilisateurs, et j'ai générer une extension de ce bundle sur le dossier src. Après avoir lancé la commande :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
php app/console sonata:easy-extends:generate SonataUserBundle -d src
J'ai rajouté les deux lignes suivantes, sur mon fichier bundles.php :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Sonata\UserBundle\SonataUserBundle::class => ['all' => true],
Application\Sonata\UserBundle\ApplicationSonataUserBundle::class => ['all' => true],
Le dossier Application contenant l'extension de FOS bundle. Sauf qu'en lançant mon projet, j'ai l'erreur suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Fatal error: Uncaught Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "ApplicationSonataUserBundle" from namespace "Application\Sonata\UserBundle". Did you forget a "use" statement for another namespace? in C:\wamp64\www\staff-ma\src\Kernel.php:33
Ma classe ApplicationSonataUserBundle :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
namespace Application\Sonata\UserBundle;
 
use Symfony\Component\HttpKernel\Bundle\Bundle;
 
class ApplicationSonataUserBundle extends Bundle
{
   /**
   * {@inheritdoc}
   */
   public function getParent()
   {
      return 'SonataUserBundle';
   }
}
Mon composer.json :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
"autoload": {
    "psr-4": {
        "App\\": "src/"
    }
Après avoir modifié mon composer.json, en ajoutant la ligne suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
"autoload": {
    "psr-4": {
        "App\\": "src/"
        "Application\\": "src/Application/"
    }
},
J'ai l'erreur suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Fatal error: Cannot declare class Application\Sonata\UserBundle\ApplicationSonataUserBundle, because the name is already in use in C:\wamp64\www\staff-ma\src\Application\Sonata\UserBundle\App" licationSonataUserBundle.php on line 24
Je ne sais pas d'où viens l'erreur.

Version symfony : 3.4
Version Sonata : 3.x