Magento2 CLI ne fonctionnera pas localement
Question
Je peux exécuter php bin/magento sur mon serveur distant, mais localement, lorsque j'essaie de l'exécuter, j'obtiens les erreurs suivantes :
D:\Magento2>php bin/magento
PHP Fatal error: Cannot instantiate interface Magento\Framework\Console\CommandListInterface in D:\Magento2\vendor\magento\framework\ObjectManager\Factory\Dyn
PHP Stack trace:
PHP 1. {main}() D:\Magento2\bin\magento:0
PHP 2. Magento\Framework\Console\Cli->__construct() D:\Magento2\bin\magento:22
PHP 3. Symfony\Component\Console\Application->__construct() D:\Magento2\vendor\magento\framework\Console\Cli.php:83
PHP 4. Magento\Framework\Console\Cli->getDefaultCommands() D:\Magento2\vendor\symfony\console\Symfony\Component\Console\Application.php:91
PHP 5. Magento\Framework\Console\Cli->getApplicationCommands() D:\Magento2\vendor\magento\framework\Console\Cli.php:112
PHP 6. Magento\Framework\ObjectManager\ObjectManager->create() D:\Magento2\vendor\magento\framework\Console\Cli.php:140
PHP 7. Magento\Framework\ObjectManager\Factory\Dynamic\Developer->create() D:\Magento2\vendor\magento\framework\ObjectManager\ObjectManager.php:57
Fatal error: Cannot instantiate interface Magento\Framework\Console\CommandListInterface in D:\Magento2\vendor\magento\framework\ObjectManager\Factory\Dynamic\
Call Stack:
0.0002 124312 1. {main}() D:\Magento2\bin\magento:0
0.0320 845168 2. Magento\Framework\Console\Cli->__construct() D:\Magento2\bin\magento:22
1.0122 12222368 3. Symfony\Component\Console\Application->__construct() D:\Magento2\vendor\magento\framework\Console\Cli.php:83
1.0180 12586728 4. Magento\Framework\Console\Cli->getDefaultCommands() D:\Magento2\vendor\symfony\console\Symfony\Component\Console\Application.php:91
1.0189 12625928 5. Magento\Framework\Console\Cli->getApplicationCommands() D:\Magento2\vendor\magento\framework\Console\Cli.php:112
4.1712 39443128 6. Magento\Framework\ObjectManager\ObjectManager->create() D:\Magento2\vendor\magento\framework\Console\Cli.php:140
4.1712 39443384 7. Magento\Framework\ObjectManager\Factory\Dynamic\Developer->create() D:\Magento2\vendor\magento\framework\ObjectManager\ObjectManager
Je travaille en mode développeur, avec tous les caches désactivés.Cela a commencé à se produire après la mise à niveau de 2.0.X vers 2.1.0rc2
Il semble que Symfony ne fonctionne pas correctement...
La solution 2
Ce n'est peut-être pas la meilleure réponse, mais j'ai constaté que la mise à jour du serveur distant, puis la synchronisation des fichiers sur ma machine locale résolvaient tous les problèmes.
Autres conseils
- Vérifiez si \\Magento\\Framework\\Console\\CommandListInterface existe tel qu'il est appelé dans lib/internal/Magento/Framework/Console/Cli.php:140
- Vérifiez \\Magento\\SampleData\\Console\\CommandList car il étend Magento\\Framework\\Console\\CommandListInterface qui peut ne pas exister.
- Vérifiez app/etc/di.xml s'il a la bonne préférence pour Magento\\Framework\\Console\\CommandListInterface.
- Nettoyez le cache.
Cela peut arriver en raison des autorisations, essayez :
chmod 777 -R .
(ou un équivalent plus sécurisé) dans le répertoire de l'application et relancez votre commande.
Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange