Erreur fatale d'installation de Magento 2 - Impossible d'instancier l'interface


18

J'ai installé un nouveau Magento 2.1 sur la ligne de commande et j'obtiens toujours la même erreur fatale lorsque j'essaie d'accéder au frontend ou au backend.

Erreur fatale: erreur non détectée: impossible d'instancier l'interface Magento \ Framework \ App \ Config \ Scope \ ReaderPoolInterface

Quelqu'un a vécu la même chose? J'ai trouvé quelques ressources mais sans réelle aide.

Mettre à jour J'ai supprimé var / di et var / generation et je l'ai mis en mode développeur

Fatal error: Uncaught Error: Cannot instantiate interface Magento\Framework\App\Config\Scope\ReaderPoolInterface in /shop/build/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php:73 Stack trace: #0 
/shop/build/vendor/magento/framework/ObjectManager/ObjectManager.php(71): Magento\Framework\ObjectManager\Factory\Dynamic\Developer->create('Magento\\Framewo...') #1 
/shop/build/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php(126): Magento\Framework\ObjectManager\ObjectManager->get('Magento\\Framewo...') #2 
/shop/build/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php(53): Magento\Framework\ObjectManager\Factory\AbstractFactory->resolveArgument(Array, 'Magento\\Framewo...', NULL, 'readerPool', 'Magento\\Framewo...') #3 
/shop/build/vendor/magento/framework/ObjectManager/Factory/Dynamic/Develo in /shop/build/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php on line 73

Avez-vous essayé de supprimer var / generation var / cache et de passer en mode développeur?
Raphael at Digital Pianism

@RaphaelatDigitalPianism fait les deux pas de chance
Klettseb

Avez-vous installé des modules tiers avant d'exécuter l'installation de Magento?
Aurélien FOUCRET

Réponses:


14

Si vous utilisez la configuration nginx de l'exemple officiel et exécutez Magento en mode par défaut / développeur, cette situation peut se produire avec la valeur globale de la racine du document définie comme

root $MAGE_ROOT/pub;

Le problème peut être résolu en définissant la racine Magento du répertoire pub sur la racine index.php

root $MAGE_ROOT;

Dans le cas d'Apache, le DocumentRootchangement de valeur peut également corriger la situation. J'espère que cela vous aidera.


Définir la racine Web en dehors du pub n'est, dans l'ensemble, pas une très bonne idée.
siliconrockstar

13

Assurez-vous que le module PHP intl est installé, effacez var/generation(ou generation/*si vous utilisez Magento 2.2+) et var/cache, activez les modules Magento ( bin/magento module:enable --all), compilez DI ( bin/magento setup:di:compile), puis réessayez.


Repérez. La désactivation de tous les modules avant l'exécution setup:installou setup:upgradeest le problème
Stevie G

5

Après avoir téléchargé tous les fichiers / créé le projet via Composer, vous devez configurer le magasin. Vous pouvez le faire à partir de la ligne de commande:

php bin/magento setup:store-config:set --help

Ou allez sur: http://mystore.com/setup


1

Les étapes que j'ai faites étaient les suivantes pour se débarrasser de ce problème.

J'ai d'abord réinstallé Magento complètement nouveau, puis j'ai fait ceci:

  • var / generation et var / cache supprimés

  • passé en mode développeur pour recompiler

Et soudain, ça a bien fonctionné


1
mode de recompilation? où est-ce
Philipp Sander

Si vous passez en mode développement, il se recompile
Klettseb

1

J'ai également ce genre de problème lorsque j'essaie d'exécuter Magento cli comme magento listdans le terminal. Après plusieurs heures, j'ai essayé les solutions mais toutes les réponses ne fonctionnent pas pour moi. il s'avère que le di.xmlfichier est perdu.

Pas :

  • Copiez tous les fichiers manquants d'ici:

https://github.com/magento/magento2/tree/2.1/app/etc .

  • Après cela , exécutez le supprimer le cache: rm -rf var/*.
  • Maintenant, si vous exécutez, magento listcela fonctionnera à nouveau.

0

Eu le même problème causé par la modification du code sans nettoyer le cache en premier. J'ai nettoyé manuellement le cache, il a résolu le problème.

sudo rm -rf var / cache
sudo rm -rf var / di
sudo rm -rf var / génération
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.