Я был счастлив работать в моей среде разработки, и вдруг я начал получать следующую ошибку:
PHP Неустранимая ошибка: не удается выполнить повторную сборку composerRequire7a368ac394ae1d2e857becf2a235ebaa () (ранее объявленной в [APP_ROOT] /vendor/composer/autoload_real.php:56) в [APP_ROOT] /vendor/composer/autoload_real.php в строке 59
Я не вносил никаких изменений, чтобы говорить о композиторских зависимостях (хотя я думаю, что я сделал composer update
где-то в этом таймфрейме, но никаких изменений в зависимостях / пакетах не было, поэтому ничего не изменилось.
Примечательно, что когда я проверяю репо на своем ноутбуке, я НЕ получаю эту ошибку, но если я git clone
чистое репо, а затем composer install
на моей основной машине разработки, я ПОЛУЧАЮ эту ошибку. Поэтому я предполагаю, что он должен иметь какое-то конкретное машинное происхождение, но у меня заканчиваются идеи о том, что это может быть.
Любая помощь будет принята с благодарностью.
Примечание . Я запускаю PHP 5.3.28 на OSX; мое приложение использует пространство имен и соответствует PSR0
Также следует отметить, что я запускаю PHPUnit 4.0.17, и ошибка запускается на самых первых этапах попыток выполнить единичный тест (неважно, какой блок-тест). Вот трассировка стека:
0.0009 636648 1. {main}() [APP_BASE]/vendor/phpunit/phpunit/phpunit:0 0.0465 1423664 2. PHPUnit_TextUI_Command::main() [APP_BASE]/vendor/phpunit/phpunit/phpunit:54 0.0465 1424280 3. PHPUnit_TextUI_Command->run() [APP_BASE]/vendor/phpunit/phpunit/src/TextUI/Command.php:132 0.0465 1424280 4. PHPUnit_TextUI_Command->handleArguments() [APP_BASE]/vendor/phpunit/phpunit/src/TextUI/Command.php:141 0.0674 2123344 5. PHPUnit_TextUI_Command->handleBootstrap() [APP_BASE]/vendor/phpunit/phpunit/src/TextUI/Command.php:638 0.0681 2139872 6. PHPUnit_Util_Fileloader::checkAndLoad() [APP_BASE]/vendor/phpunit/phpunit/src/TextUI/Command.php:808 0.0681 2140008 7. PHPUnit_Util_Fileloader::load() [APP_BASE]/vendor/phpunit/phpunit/src/Util/Fileloader.php:77 0.0774 2144176 8. include_once('[APP_BASE]/tests/test-loader.php') [APP_BASE]/vendor/phpunit/phpunit/src/Util/Fileloader.php:93 0.0775 2146736 9. include('[APP_BASE]/vendor/autoload.php') [APP_BASE]/tests/test-loader.php:2
Удалите composer.lock
и vendor/
и снова запустите composer update
.
У меня возникла эта проблема, когда я сделал копию существующего каталога проектов и попытался запустить phpunit в новом каталоге. Наконец выяснилось, что, когда я выполнял phpunit, он заканчивался из старого каталога. Я запустил это:
которые phpunit
И увидел, что он работает из моего каталога поставщиков композиторов:
/ Главная / бродяга / Код / MYOLDPROJECT / API / поставщик / бен / PHPUnit
Я запустил phpunit из нового каталога, и проблема исчезла:
/ Главная / бродяга / Код / mynewproject / API / поставщик / бен / PHPUnit