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


12

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

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

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

Скриншот:

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

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


1
Я думаю, что-то не так в вашей конфигурации пользовательского модуля ..
HoangHieu

В любом случае, довольно грустно, что что-то не так с одним модулем может сломать ядро.
micwallace


Я сталкиваюсь с той же проблемой, после копания файла 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


Это должно быть ответом.
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.

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


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: чистый

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.