Mein Magento-Shop wirft diesen Fehler aus:
Schwerwiegender Fehler: Die Schnittstelle Magento \ Framework \ View \ Design \ Theme \ ResolverInterface in /Library/WebServer/Documents/magento/vendor/magento/framework/ObjectManager/Factory/Dynamic/Developer.php in Zeile 73 kann nicht instanziiert werden
Ich weiß nicht, warum es anfing zu erscheinen. Ich habe keine neue Modulinstallation durchgeführt. Der Laden funktionierte gut.
Ich habe die Dateiberechtigungen überprüft und sehe dort kein Problem. Löschen Sie auch das Verzeichnis / var / dir und, glaube ich, alle Ordner / Dateien, die erstellt wurden.
[BEARBEITEN] Die Voreinstellung ist Vendor / Magento / Magento2-Base / App / etc / di.xml
<preference for="Magento\Framework\View\Design\Theme\ResolverInterface" type="Magento\Theme\Model\Theme\Resolver" />
var/generation
.Antworten:
Wenn Sie redis verwenden, führen Sie Folgendes aus:
Wenn Sie auch eine Umgebung wie ansible (
lxc - server
) verwenden, müssen Sie diesen Befehl im Container ausführen . Außerdem habe ich folgendes gemacht:var/generation
var/cache
bin/magento module:enable --all
bin/magento setup:di:compile
quelle
Ich hatte diesen Fehler und er wurde behoben, indem der Ordner var gelöscht und dann ausgeführt wurde
setup:upgrade
. Wenn dies nicht funktioniert, suchen Sie nach Fehlern indi.xml
Dateienquelle
var/cache
redis-cli flushall
hat für mich funktioniert.Führen Sie den folgenden Befehl aus und überprüfen Sie ihn.
Hat für mich gearbeitet.
quelle
Das hat bei mir funktioniert:
quelle
In meinem Fall musste ich ein Modul entfernen und löschte einfach die Dateien des Moduls, ohne die richtigen Methoden zu befolgen, und dann war dieser Fehler überall auf dem Bildschirm. Nachdem ich viel gesucht hatte, ersetzte ich die Dateien des Moduls wieder in dasselbe Verzeichnis und löschte alle erforderlichen Ordner aus var und führte die folgenden Befehle aus.
und alles wurde behoben. Ich habe dann die richtigen Methoden zum Entfernen des Moduls befolgt. Hoffe das spart jemandem Zeit. :-)
quelle
Leeren Sie den Cache
rm -rf var/cache
Wenn redis aktiviert ist, löschen Sie redis db über die Befehlszeile:
quelle
wird Ihr Problem beheben
quelle
Dump Composer Autoload- Dateien:
Dann:
quelle
Das gleiche Problem hatte ich beim Aktualisieren der Magento-Version 2.3.3. Daher ersetze ich die
app/etc/di.xml
Dateiinhaltshilfe durch den folgenden Pfad. https://github.com/magento/magento2/blob/ddf42caaf25311f10b23b95a92746f99943e045e/app/etc/di.xml#L212Mein Problem ist jetzt behoben
quelle
Dieser Fehler wird erstellt, wenn Sie versuchen, ein Objekt (eine Klasse) zu erstellen, das tatsächlich eine Schnittstelle darstellt. Dies geschieht normalerweise, wenn Sie die Schnittstelle für eine Klasse in der Datei di.xml nicht überschrieben haben. Oder haben die in der Datei di.xml im Verzeichnis adminhtml überschrieben und versuchen, die Schnittstelle im Frontend zu verwenden.
quelle