Maison > Article > développement back-end > Symfony 3.3 ClassNotFoundException après la création du bundle : comment résoudre le problème de chargement automatique ?
La création d'un nouveau bundle dans Symfony 3.3 peut parfois conduire à une erreur "ClassNotFoundException". Ce problème déroutant se produit après avoir effectué les étapes suivantes :
Lors de la tentative d'accès "127.0.0.1:8000", le message d'erreur s'affiche.
L'erreur se produit car la commande "generate:bundle" ne parvient pas à mettre à jour la section "autoload" de " composer.json" lorsqu'un nouvel espace de noms est introduit. Cela entraîne l'échec du chargement correct de la classe du bundle créé.
Pour résoudre le problème, modifiez manuellement "composer.json" et ajoutez la ligne suivante :
"psr-4": { "AppBundle\": "src/AppBundle", "Paul\": "src/Paul" }
Ensuite, exécutez "composer dumpautoload" et redémarrez le serveur.
Dans Symfony 3.2, la configuration "autoload" recherchait automatiquement toutes les classes PHP dans le répertoire "src/". Cependant, dans Symfony 3.3, cette configuration a changé pour inclure explicitement les espaces de noms. Par conséquent, la commande "generate:bundle" ne met plus à jour la section "autoload", ce qui entraîne l'erreur de classe introuvable.
Ce problème peut être facilement résolu en mettant à jour manuellement le fichier « composer.json » et exécutez « composer dumpautoload ». N'oubliez pas que ce problème est dû au changement de configuration "autoload" dans Symfony 3.3.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!