Récemment, lors du déploiement d'un environnement serveur, j'ai rencontré un Les problèmes causés par une incompatibilité descendante de la version de Composer sont enregistrés.
Description du problème
L'application Api en arrière-plan est développée en utilisant le mode multi-application de ThinkPHP6.0
Lorsqu'elle est initialement déployée, elle indique toujours que le contrôleur est introuvable. .
J'étais assez déprimé à ce moment-là, pourquoi n'arrivais-je pas à trouver la manette ? Cette exception ne se produit généralement que lorsque le mode multi-applications n'est pas activé, mais le mode multi-applications est évidemment activé et les extensions appropriées sont installées (Composer 2.0.x ne lève pas d'exception directement lors de l'exécution de l'installation de Composer).
Juste au moment où j'étais perplexe, j'ai accidentellement vu que la version de Composer que j'utilise actuellement est 2.0.x
.
Je suis revenu et je l'ai comparé avec ma version locale : 1.8
Après une recherche sur Google, j'ai découvert que la série Composer 2.0 n'était sortie que récemment, alors j'ai immédiatement pensé si cela était dû à une incompatibilité ascendante de Composer. .
Hé les gars, c'est vraiment un problème causé par la compatibilité :
Solution
Puisqu'il s'agit d'une version Compatibilité les problèmes causés par une version trop élevée sont faciles à résoudre, il suffit de baisser la version.
La rétrogradation de Composer est très simple. Il n'est pas nécessaire de recompiler et d'installer. Utilisez simplement la commande suivante :
composer self-update 1.8.0
Si vous ne savez pas quelles versions sont disponibles, vous pouvez consulter le site officiel. historique des versions.