В пространстве имен «setup» не определены команды: Magento 2

12

Я установил latest version of Megento 2, все работает отлично, интерфейс, бэкэнд и функциональность.

У меня есть одна проблема с bin/magento setup:upgradeкомандой, когда я запускаю эту команду в терминале, я получаю исключение ниже.

[InvalidArgumentException]
Нет команд, определенных в пространстве имен «setup».

Скриншот:

введите описание изображения здесь

Есть ли что-то, что я пропустил во время установки, или мне нужно установить пакет, чтобы он заработал?

Дипак Манкотия
источник
1
Я думаю, что-то не так в вашей конфигурации пользовательского модуля ..
HoangHieu
В любом случае, довольно грустно, что что-то не так с одним модулем может сломать ядро.
micwallace
Пожалуйста, обратитесь к ответу ниже: http://stackoverflow.com/questions/33935850/there-are-no-commands-defined-in-the-setup-namespace-magento-2/34013490#34013490
VIPIN A ROY
Я сталкиваюсь с той же проблемой, после копания файла module.xml есть небольшая ошибка в теге sequence, как только я исправил проблему, все работает нормально.
сен

Ответы:

10

В моем случае это работало с использованием sudo

sudo bin/magento setup:upgrade

РЕДАКТИРОВАТЬ 19/02/16

На самом деле, решение "sudo" - это скорее обходной путь для плохих прав / владения файлами Magento.

Если у вас еще нет владельца файловой системы Magento, создайте его и добавьте в группу apache.

adduser magento
passwd magento
//CentOS
usermod -g apache magento
//Ubuntu
usermod -g www-data magento
//restart apache
//CentOS
service httpd restart
//Ubuntu
service apache2 restart

Теперь, когда у вас есть пользователь, вы можете установить владельца и разрешения (для пользователя root или для пользователя с sudo).

cd /var/www/html/magento2beta/magento2
find . -type d -exec chmod 770 {} \; && find . -type f -exec chmod 660 {} \; && chmod u+x bin/magento
//CentOS
chown -R magento:apache .
//Ubuntu
chown -R magento:www-data .

Переключиться на пользователя magento

su magento

Теперь вы сможете запустить php bin / magento setup: обновить или любую другую команду с вашим пользователем magento

csmarvz
источник
Это должно быть ответом.
RT
2
Я использую Windows. что я должен сделать для решения этой проблемы?
MaYaNk
Вы также увидите эту ошибку, когда что-то не так с вашим пользовательским модулем, например, если файл module.xml не находится в каталоге etc и т. Д.
Циклон-код
8

There are no commands definedэто общее сообщение, которое скрывает реальную проблему.
Я открыл вопрос о том, что Magento 2 должен уточнить такие сообщения, поэтому, пожалуйста, проголосуйте за него.
В моих случаях проблема была с composer.jsonфайлом и с module.xmlфайлом расширения .
Смотрите также:

  • Все There are no commands defined вопросы в трекере.
  • Все There are no commands defined вопросы по magento.stackexchange.com.
Mage2.PRO
источник
1
Спасибо за ваш ответ, вы получили какое-либо решение для решения этой проблемы?
Дипак Манкотия
Конечно, просто прочитайте ссылки.
Mage2.PRO
1
@ Mage2.PRO, пожалуйста, опубликуйте окончательное решение здесь
7оч
Не существует «окончательного решения», потому что оно индивидуально. There are no commands definedпросто общее сообщение, оно скрывает реальную проблему, и реальная проблема может быть другой.
Mage2.PRO
1
@ Mage2.PRO There are no commands defined in the "setup" namespace. для этой ошибки, что я должен сделать. Я использую Windows Localhost
н. макс
3

Это происходит, если ваш любой XML-файл, определенный в etc, не определен правильно. Может быть проблема последовательности или ошибка в определении узла

Откройте cmd, перейдите в корневой каталог magento и введите команду ниже.

D:\Server\htdocs\mage2>
D:\Server\htdocs\mage2>php bin/magento list

Вы получите относительную информацию об ошибке.

[Magento\Framework\Exception\LocalizedException]
  Invalid XML in file D:/Server/htdocs/mage2/app/code/Vendor/Module/et
  c/frontend/di.xml:
  Attribute sortOrder redefined
  Line: 4
Абхишек
источник
2

Это происходит, если ваш любой XML-файл, определенный в etc, не определен правильно. Может быть проблема последовательности или ошибка в определении узла

Откройте cmd, перейдите в корневой каталог magento и введите команду ниже.

D:\Server\htdocs\mage2>
D:\Server\htdocs\mage2>php bin/magento list

Вы получите относительную информацию об ошибке.

[Magento\Framework\Exception\LocalizedException]
  Invalid XML in file D:/Server/htdocs/mage2/app/code/Vendor/Module/et
  c/frontend/di.xml:
  Attribute sortOrder redefined
  Line: 4
Абхишек
источник
1

Если вы устанавливаете magento в localhost, вы должны установить разрешения 777 для папок var и pub. Эта проблема может быть решена

Тао Фам
источник
Спасибо за ваш ответ, эти папки уже имеют разрешение 777
Дипак Манкотия
И это не просыпается?
Тао Фам
да не работает
Дипак Манкотия
Кто-нибудь получил решение этого? Когда я запускаю эту команду, у меня возникает другая проблема / ошибка, т.е. расширение pdo_mysql не установлено, что делать, не могу понять.
KA9
0

У меня была та же проблема, и я последовал нескольким предложенным глупым предложениям, чтобы исправить проблему, например, удалить мой composer.json что-то вроде этого. Но это не решило мою проблему. Сегодня я снова столкнулся с проблемой и попробовал новый подход для ее отслеживания. Все подробности и скриншот находятся в моем личном блоге http://david.firstbiz.cc/blog_detail.php?id=115. Я описал свои шаги здесь:

1. для CLI, пожалуйста, добавьте "-vvv", и он отобразит пути трассировки функций
2. попробуйте загрузить любую страницу продукта и проверить журнал ошибок вашего веб-сервера, и вы сможете увидеть более подробную информацию.
3. имя класса и имя файла должны быть одинаковыми (* это тот случай, с которым я столкнулся)
Дэвид Лин
источник
0

Если вы получили эту ошибку сразу после того, как пытались создать модуль, убедитесь, что вы добавили эти файлы в свой модуль. /etc/module.xml

Shazad Maved
источник
0

Это может быть проблема с разрешением. Вы можете установить

chmod -R 777 magento folder permissions.

Просто для проверки и посмотреть, будет ли это работать. надеюсь, это поможет вам.

Ледиан Химетлари
источник
0

У меня была та же самая ошибка, и из других ответов, которые я читаю здесь, это явно вызвано множеством проблем. Но мой был вызван, потому что мой файл внедрения зависимостей в company / module / etc / di.xml был пуст! (Я удалил содержимое по ошибке)

Magento пытался загрузить файл, но он был пустым, поэтому он был недействительным и вызывал многократные ошибки, включая ошибку в этом вопросе

Просто думал, что я опубликую это, если это сэкономит еще 4 часа их жизни!

Барри Коннолли
источник
0

Я столкнулся с подобной проблемой, и в моем случае проблема была из-за отсутствия config.phpв app/etc.

Аншу Мишра
источник
0

Пожалуйста, проверьте разрешение вашего magentoDirectory.

$ sudo rm -rf var / cache / * создан / код / ​​*

$ sudo chmod 777 -R magentoDirectory

$ sudo chown -R www-data: www-data magentoDirectory

$ php bin / magento setup: di: compile

$ php bin / magento cache: чистый

Аршад Сайед
источник