установка:di: ошибка компиляции из-за дублированного класса средства переноса данных


Я сталкиваюсь со следующей фатальной ошибкой при попытке выполнить команду setup:di:compile:

Неустранимая ошибка: Не удается объявить миграцию класса\Шаг\версия11410to2000test, так как имя уже используется в/var/www/html/magento/vendor/magento/data-migration-tool/tests/unit/testsuite/Migration/Step/UrlRewrite/Version11410to2000Test.php в строке 109

Я попытался скомпилировать заново, потому что я получал 404 на бэкэнде (вызванный magento, не веб-сервер apache).

Любая помощь приветствуется.

Редактировать: Это новая установка Magento 2, за исключением добавления официального (и правильного) инструмента переноса данных.

Author: Siarhey Uchukhlebau, 2016-09-13

2 answers

Измените и дайте другое имя классу вашего контроллера

Это может быть проблемой, потому что имя вашего класса контроллера также используется каким-либо другим контроллером

Пример, показанный в приведенном ниже URL

Https://stackoverflow.com/questions/708140/php-fatal-error-cannot-redeclare-class

И если это не так, то

Пожалуйста, удалите папку di в var

 -1
Author: Murtuza Zabuawala, 2017-05-23 12:37:12

Более прямым ответом на эту проблему является:

В верхней части файла: {magento-base}/vendor/magento/data-migration-tool/tests/unit/testsuite/Migration/Step/UrlRewrite/Version11410to2000Test.php

Заменить:

namespace Migration\Step;

С помощью:

namespace Migration\Step\UrlRewrite;
 8
Author: iJeep, 2016-10-23 19:43:53