Компиляция Magento2 DI занимает слишком много времени


9

После создания / обновления нового модуля / темы я использую следующую команду в корневом каталоге установки Magento

php bin/magento setup:upgrade

Который просит меня запустить компиляцию, поэтому я использую

 php bin/magento setup:di:compile

на его компиляцию уходит около 8 минут. Есть ли способ ускорить процесс компиляции?


1
Я сообщил об этом на GitHub 3 недели назад: # 2893 .
Mage2.PRO

Ответы:


10

Прежде всего, компиляция нужна только в производственном режиме. Если вы разрабатываете, вам не нужно запускать компиляцию

Трудно улучшить компиляцию, потому что в этом процессе строится дерево всех классов в системе. Например, изменение в di.xml может повлиять на половину классов.

В режиме разработчика, если вы изменяете / создаете конструктор, вам все равно нужно удалить сгенерированную / code / folder, чтобы удалить автоматически сгенерированный код и очистить кеш


Итак, я должен игнорировать это сообщение в режиме разработчика?
amitshree

Да, вы должны игнорировать
KAndy

4
Кроме того, как только вы запустите компиляцию один раз, в / var / di появятся файлы * .ser, и вы должны удалить их, в противном случае они все еще используются.
Фабиан Шменглер

1
даже в режиме разработчика, если вы создаете конструктор или модифицируете какой-либо из них, вам все равно нужно запустить setup: di: compile. возможно это теперь требуется в последней версии magento.
Дони Вибово,

1
DoniWibowo @ Suman-PHP4U Я обновил ответ об изменениях кода
KAndy
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.