J'ai une erreur lorsque j'ajoute un module ..
Veuillez réexécuter la commande de compilation Magento
donc je lance la commande ci-dessous mais affiche également l'erreur ci-dessous lors de l'exécution de la commande à partir de la racine,
php magento setup: di: compile
Compilation was started.
%message% 0/7 [>---------------------------] 0% 1 sec 37.0 MiB%message% 0/7 [>
---------------------------] 0% 1 sec 37.0 MiBProxies code generation... 0/7 [
>---------------------------] 0% 1 sec 37.0 MiB
Proxies code generation... 1/7 [====>-----------------------] 14% 47 secs 43.5
MiB
Repositories code generation... 1/7 [====>-----------------------] 14% 47 secs
43.5 MiB
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate
24 bytes) in D:\xampp\htdocs\linsenwelt\vendor\zendframework\zend-code\src\Scan
ner\FileScanner.php on line 36
Comment réparer ?
php
magento-2.0
memory
code-generation
Khushbu Mehta
la source
la source
Réponses:
Une solution rapide pour la limite de mémoire dans la commande Magento 2 consiste à ajouter directement la limite de mémoire dans la commande.
Pour la commande de compilation,
Pour le déploiement
Vous pouvez changer selon 5G en max si le problème n'est pas résolu.
la source
Il semble que votre cli ne dispose que de 128 Mo de mémoire. Augmentez la valeur à au moins 256 Mo ou 512 Mo si vous le pouvez.
la source
Allowed memory size of 134217728 bytes
alors vous n'avez pas augmenté la limite de mémoire pour cli.utiliser cette façon «sale»
la source
la source
Si vous utilisez PHP> = 5.3.0 et que vous avez utilisé Magento 2.1.x et supérieur, puis après avoir exécuté
composer install
, deux fichiers seront créés dans votre répertoire racine et votre répertoire pub nommé.user.ini
Modifiez ces fichiers pour remplacer vos paramètres PHP.ini, dans ce cas,
memory_limit
Si vous utilisez Apache, vous devrez prendre soin des fichiers dans le répertoire racine uniquement, pas
/pub
celui et vice versa si vous utilisez engineX (nginx)J'espère que ça aide.
la source
Vous devez augmenter la mémoire allouée à php. Pour augmenter la mémoire, exécutez la commande
php --ini
. Findout a chargé php.ini. Ça devrait être commeAccédez au php.ini actuellement chargé (/etc/php5/cli/php.ini) et découvrez le paramètre memory_limit. Augmentez la valeur par rapport au paramètre memory_limit à 256M ou 512M.
la source
Cette situation peut être difficile à déboguer car si vous
il montre la limite de mémoire pour le PHP dans votre chemin, ce qui pourrait être bien. Mais le script magento (bin / magento) utilise le préambule
il n'utilise donc pas nécessairement le PHP de votre chemin! Une façon de retrouver le
php.ini
fichier utilisé est d'écrire un petit script comme celui-ci:appelez-le
getinfo
(pasgetinfo.php
!), rendez-le exécutable, puis exécutez-le comme ceci:Cela vous montrera le fichier ini que vous devez modifier. Dans ce fichier, modifiez la valeur de configuration
memory_limit
comme suggéré dans d'autres publications, à une valeur supérieure à 128M. Enregistrez ensuite le fichier et vérifiez votre travail:la source
Je rencontre un problème similaire, la limite de mémoire a été augmentée à 2 Go dans le fichier php ini, le fichier phpinfo () a montré qu'il était réglé sur 2 Go. Il semble que Magento ait défini manuellement la limite de mémoire quelque part. J'ai augmenté la limite de mémoire à l'intérieur du fichier bin / magento. En première ligne, je mets ceci:
ce qui l'a fait fonctionner.
la source
J'ai une solution pour ma question. Pour une erreur de mémoire épuisée, nous devons ajouter une limite de mémoire pour le code de compilation.
J'espère que cela aidera quelqu'un à l'avenir.
la source
Utilisez la ligne suivante après
php/bin magento -d memory_limit=5G s:d:c
pour votre code de compilation. Cela est dû à la limite de mémoire autorisée pour le php. Mais après avoir autorisé la limite de mémoire dans la commande, cela supprimera l'erreur et votre compilation et les autres commandes s'exécuteront sans erreur. Ajoutez simplement ceci-d memory_limit=5G
dans chaque commande comme vous l'avez vu dans l'exemple ci-dessus. Votez si vous avez trouvé ma réponse utile.la source
La compilation en utilisant "-d memory_limit = 5G" n'est pas une sage décision. Il s'agit d'une solution temporaire qui peut être affectée pendant le processus de changement de mode, c'est-à-dire du développeur à la production. Cette fois, le système compile le code sans cette logique "-d memory_limit = 5G" qui renvoie l'erreur.
C'est une meilleure option pour corriger cette erreur à ce stade. Pour résoudre ce problème, ouvrez php.ini et augmentez le memory_limit de 1024M et exécutez la commande de compilation php bin / magento setup: di: compile
Vérifiez ceci: https://getcomposer.org/doc/articles/troubleshooting.md#memory-limit-errors
Cette fois ça devrait marcher
la source
Si vous rencontrez ce problème dans Cli, veuillez enregistrer cette commande
php -dmemory_limit = Configuration bin 8G / magento: mise à niveau
la source
pour M2, ajoutez la limite de mémoire via ssh avec la commande ci-dessous.
pour la commande de compilation:
php -dmemory_limit=5G bin/magento setup:di:compile
pour la commande de déploiement:php -dmemory_limit=5G bin/magento setup:static-content:deploy
vous pouvez augmenter la valeur 5G si le problème n'est pas résolu.
la source
Une solution rapide pour la limite de mémoire dans la commande Magento 2 consiste à ajouter directement la limite de mémoire dans la commande.
Pour la commande de compilation,
php -dmemory_limit = Configuration 5G bin / magento: di: compile For Deployment
php -dmemory_limit = 5G bin / magento setup: static-content: deploy Vous pouvez changer selon 5G en max si le problème n'est pas résolu.
ça marche vraiment :)
la source