Fehler beim Installieren optionaler Beispieldaten
In diesem Thema werden Lösungen für Fehler besprochen, bei denen die Installation optionaler Beispieldaten auftreten kann.
Symptom (Dateisystemberechtigungen)
Fehler im Konsolenprotokoll während der Installation der Beispieldaten mithilfe des Einrichtungs-Assistenten:
Module 'Magento_CatalogRuleSampleData':
[ERROR] exception 'Magento\Framework\Exception\LocalizedException' with message 'Can't create directory /var/www/html/magento2/generated/code/Magento/CatalogRule/Model/.' in /var/www/html/magento2/lib/internal/Magento/Framework/Code/Generator.php:103
(more)
Next exception 'ReflectionException' with message 'Class Magento\CatalogRule\Model\RuleFactory does not exist' in /var/www/html/magento2/lib/internal/Magento/Framework/Code/Reader/ClassReader.php:29
(more)
Diese Ausnahmen ergeben sich aus den Einstellungen für Dateisystemberechtigungen.
Lösung
Symptom (Produktionsmodus)
Wenn Sie derzeit für den Produktionsmodus festgelegt sind, schlägt die Installation der Beispieldaten fehl, wenn Sie den Befehl magento sampledata:deploy verwenden:
PHP Fatal error: Uncaught TypeError: Argument 1 passed to Symfony\Component\Console\Input\ArrayInput::__construct() must be of the type array, object given, called in /<path>/vendor/magento/framework/ObjectManager/Factory/AbstractFactory.php on line 97 and defined in /<path>/vendor/symfony/console/Symfony/Component/Console/Input/ArrayInput.php:37
Lösung
Installieren Sie keine Beispieldaten im Produktionsmodus. Wechseln Sie in den Entwicklermodus, löschen Sie einige var
-Verzeichnisse und versuchen Sie es erneut.
Geben Sie die folgenden Befehle in der Reihenfolge ein, die als Adobe Commerce-Dateisysteminhaber angezeigt wird:
cd <magento_root>
bin/magento deploy:mode:set developer
rm -rf generated/code/* generated/metadata/*
bin/magento sampledata:deploy
Symptom (Sicherheit)
Während der Installation optionaler Beispieldaten wird eine Meldung ähnlich der folgenden angezeigt:
PHP Fatal error: Call to undefined method Magento\Catalog\Model\Resource\Product\Interceptor::getWriteConnection() in /var/www/magento2/app/code/Magento/SampleData/Module/Catalog/Setup/Product/Gallery.php on line 144
Lösung
Deaktivieren Sie während der Installation der Beispieldaten SELinux mit einer Ressource wie:
Symptom (Entwicklungszweig)
Andere Fehler werden angezeigt, z. B.:
[Magento\Setup\SampleDataException] Error during sample data installation: Class Magento\Sales\Model\Service\OrderFactory does not exist
Lösung
Es gibt bekannte Probleme bei der Verwendung von Beispieldaten mit der Adobe Commerce-Entwicklungsverzweigung. Verwenden Sie stattdessen die Masterverzweigung. Sie können wie folgt zur Masterverzweigung wechseln:
cd <magento_root>
git checkout master
git pull origin master
Symptom (max_execution_time)
Die Installation wird beendet, bevor die Beispieldateninstallation abgeschlossen ist. Ein Beispiel:
(more)
Module 'Magento_CustomerSampleData':
Installing data...
Die Installation der Beispieldaten ist nicht abgeschlossen.
Dieser Fehler tritt auf, wenn die maximale konfigurierte Ausführungszeit Ihrer PHP-Skripte überschritten wird. Da das Laden von Beispieldaten lange dauern kann, können Sie den Wert während der Installation erhöhen.
Lösung
Ändern Sie als Benutzer mit root
-Berechtigungen php.ini
, um den Wert von max_execution_time
auf 600 oder mehr zu erhöhen. (600 Sekunden sind 10 Minuten. Sie können den Wert beliebig erhöhen.) Sie sollten max_execution_time
wieder auf den vorherigen Wert setzen, nachdem die Installation erfolgreich war.
Wenn Sie nicht sicher sind, wo sich php.ini
befindet, geben Sie den folgenden Befehl ein:
php --ini
Der Wert von Loaded Configuration File
ist der php.ini
, den Sie ändern müssen.