Команда компиляции, не выполняемая в промежуточной среде
Когда я запускаю команду $ php bin/magento setup:di:compile
на локальном компьютере, она сразу же перекомпилирует зависимости. Когда я делаю то же самое на промежуточном сервере, на нем отображается сообщение:
DI configuration must be cleared before running compiler. Please delete '/var/www/html/staging/var/di'.
Конечно, когда я удаляю var/di, это работает. Но мой вопрос в том, почему при локальном запуске не требуется удалять этот каталог?
Локальный запуск MAMP с php7.0.0.
Промежуточный запуск centos7 с php7.0.7, php-fpm и SELinux.
Какая разница между этими двумя средами может привести к другому поведению команды?
2 answers
/var/di
используется только в производственном режиме. Если он существует, его необходимо удалить, прежде чем вы сможете запустить bin/magento setup:di:compile
. Я предполагаю, что ваш локальный сайт находится в режиме разработчика и, следовательно, не имеет этой папки.
Вы должны удалить каталог, а не только файлы внутри var/di. Мне потребовалось некоторое время, чтобы понять это:-)