Partage
  • Partager sur Facebook
  • Partager sur Twitter

Symfony 3.4 et moins — Class not found

Après création d'un nouveau bundle ou installation d'une dépendance

Sujet résolu
7 juillet 2017 à 11:35:20

Bonjour à tous !

Si vous êtes ici, c'est :

  • que vous avez un problème de classes non trouvées dans l'un de vos (nouveaux) bundles, que ce soit :
    • juste après l'avoir créé ;
    • après en avoir supprimé un ;
    • après avoir installé une dépendance avec Composer.
  • que vous avez fait des recherches (dans ce cas, merci !) ;
  • que vous êtes simplement curieux.

Ce problème peut être rapidement corrigé.

  1. Si ce n'est pas déjà fait, commencez par installer Composer.

  2. Ensuite, ouvrez composer.json avec votre éditeur de code, et modifiez comme suit.

    Remplacez :

    "psr-4": {
     	"[Nom de l'un de vos bundles]\": "src/[Nom du même bundle]"
     	// Et ce une ou plusieurs fois, le nombre n'est pas important
     },

    Par :

    "psr-4": {
     	"": "src/"
     },
  3. Puis supprimez la ligne src/OC/PlatformBundle/OCPlatformBundle.php dans la section "files" si vous l'avez. Elle ne servira plus.

  4. Finalement, concluez la modification avec la commande php composer.phar dump-autoload — à adapter selon votre OS et votre installation.

Merci à maels1991 alias ErwanMaelGuillou pour la solution.

Peut-être lancez-vous aussi les commandes directement depuis le dossier bin/ de Symfony ?
Evitez.
Le script regarde depuis où est lancée la commande, et adapte les résultats. Or, s'il est mentionné d'utiliser …/symfony: php bin/console plutôt que …/symfony/bin: console, c'est aussi pour pallier ce genre de problèmes.

Vous voulez dire merci à quelqu'un ? Cliquez sur 👍 en bas des messages, c'est prévu pour ça sur ce forum.

En règle générale, NE RÉPONDEZ PAS JUSTE POUR DIRE MERCI. C'est non seulement inutile, mais cela prive un sujet récent d'une visibilité méritée. Imaginez que votre demande d'aide passe sur la seconde page parce qu'une personne a répondu "merci" dans un vieux sujet…

-
Edité par Ymox 14 septembre 2018 à 16:34:56

  • Partager sur Facebook
  • Partager sur Twitter
7 août 2017 à 18:38:48

Je ferme ce sujet afin d'éviter les réponses inutiles.

  • Partager sur Facebook
  • Partager sur Twitter

Je ne suis plus modérateur, ne me contactez plus pour des demandes, je n'y répondrai pas.