Schwerwiegender Fehler bei der Installation von Magento 2 - Schnittstelle kann nicht instanziiert werden


18

Ich habe ein neues Magento 2.1 über die Kommandozeile installiert und bekomme immer den gleichen schwerwiegenden Fehler, wenn ich versuche, auf das Frontend oder Backend zuzugreifen.

Schwerwiegender Fehler: Nicht gefundener Fehler: Schnittstelle Magento \ Framework \ App \ Config \ Scope \ ReaderPoolInterface kann nicht instanziiert werden

Hat jemand dasselbe erlebt? Ich habe einige Ressourcen gefunden, aber keine wirkliche Hilfe.

Update Ich habe var / di und var / generation gelöscht und in den Entwicklermodus versetzt

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

Haben Sie versucht, var / generation var / cache zu entfernen und in den Entwicklermodus zu wechseln?
Raphael bei Digital Pianism

@ RaphaelatDigitalPianism beide kein Glück getan
Klettseb

Haben Sie Module von Drittanbietern installiert, bevor Sie die Magento-Installation ausgeführt haben?
Aurélien FOUCRET

Antworten:


14

Wenn Sie die Nginx-Konfiguration aus dem offiziellen Beispiel verwenden und Magento im Standard- / Entwicklermodus ausführen, tritt diese Situation möglicherweise auf, wenn der globale Wert für das Dokumentenstammverzeichnis auf festgelegt ist

root $MAGE_ROOT/pub;

Das Problem kann behoben werden, indem das Magento-Stammverzeichnis aus dem Pub-Verzeichnis auf das Stammverzeichnis index.php gesetzt wird

root $MAGE_ROOT;

Im Falle von Apache könnte die DocumentRootWertänderung auch die Situation beheben. Hoffe, es wird helfen.


Das Setzen des Webstamms außerhalb des Pubs ist insgesamt keine sehr gute Idee.
Siliconrockstar

13

Stellen Sie sicher, dass das PHP-Modul intl installiert ist, deaktivieren Sie var/generation(oder verwenden generation/*Sie Magento 2.2+) var/cache, aktivieren Sie Magento-Module ( bin/magento module:enable --all), kompilieren Sie DI ( bin/magento setup:di:compile) und versuchen Sie es erneut.


Spot on. Das Deaktivieren von Modulen vor dem Ausführen setup:installoder setup:upgradeist das Problem
Stevie G

5

Nachdem Sie alle Dateien heruntergeladen / das Projekt über Composer erstellt haben, müssen Sie den Store einrichten. Sie können dies über die Befehlszeile tun:

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

Oder gehen Sie zu: http://mystore.com/setup


1

Ich habe die folgenden Schritte ausgeführt, um dieses Problem zu beheben.

Zuerst habe ich Magento komplett neu installiert, dann habe ich folgendes gemacht:

  • var / generation und var / cache wurden entfernt

  • Zum Neukompilieren in den Entwicklermodus gewechselt

Und plötzlich hat es gut funktioniert


1
Neukompilierungsmodus? wo ist das
Philipp Sander

Wenn Sie in den Entwicklungsmodus wechseln, wird er neu kompiliert
Klettseb

1

Ich habe auch ein solches Problem, wenn ich versuche, Magento cli wie magento listim Terminal auszuführen . Nach einigen Stunden habe ich die Lösungen ausprobiert, aber alle Antworten funktionieren bei mir nicht. es stellt sich heraus, dass diedi.xml Datei verloren geht.

Schritte :

  • Kopieren Sie alle fehlenden Dateien von hier:

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

  • Danach führen Sie das Entfernen Sie den Cache: rm -rf var/*.
  • Wenn Sie jetzt ausführen magento list, funktioniert dies wieder.

0

Hatte das gleiche Problem durch Ändern des Codes, ohne den Cache zuerst zu reinigen. Ich habe den Cache manuell gesäubert und das Problem behoben.

sudo rm -rf var / cache
sudo rm -rf var / di
sudo rm -rf var / generation
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.