Подтвердить что ты не робот

Как исправить ошибку Composer: "не удалось выполнить проверку для классов внутри dir"?

Я пытаюсь установить композитор в терминал, введя эту команду:

php composer.phar install

он начинает устанавливать необходимые пакеты, но я получаю этот тип ошибки:

[RuntimeException]
Не удалось выполнить проверку для классов внутри "app/commands", который не является файлом или папкой

Как я могу решить эту проблему?

4b9b3361

Ответ 1

Обычно это происходит, когда у вас есть некоторые поврежденные файлы или какое-либо обновление композитора разбилось или прервалось.

Чтобы решить, просто удалите папки поставщика и запустите composer install

Ответ 2

Когда вы устанавливаете Laravel, он создает

app/commands

папка. Похоже, это не так. Просто создайте его или удалите из composer.json:

"classmap": [
    "app/commands",  /// <--- this line
],

И запустите

composer update
artisan dump-autoload

Последний похож на composer dump-autoload, но он тоже делает некоторые вещи из Laravel.

Если у вас нет каких-либо команд, вам это действительно не нужно. Если вы планируете создавать команды artisan, создайте эту папку, и она должна работать.

Ответ 3

У меня была та же проблема. В моем случае я заметил, что в моей установке laravel не было папки приложений/команд. Я создал папку с командами, а композитор dump-autoload снова работает!

Ответ 4

Моя проблема заключалась в том, что у меня был App вместо App в моем пути к каталогу. Возможно, это поможет кому-то.

Ответ 5

Я Xampp пользователь в Windows 10. Я пробую все вышеперечисленные методы, но ни один из них не работает для меня. Я исправил свою проблему с помощью этого метода, и, надеюсь, это поможет другим.

  • Создать каталог C:\bin
  • Добавить ;C:\bin в переменную среды PATH (справка)
  • Загрузите https://phar.phpunit.de/phpunit-5.7.phar и сохраните файл как C:\bin\phpunit.phar
  • Откройте командную строку (например, нажмите Windows+R "тип cmd" ENTER)
  • Создайте пакет упаковки script (результат C:\bin\phpunit.cmd):

    C:\Users\username> cd C:\bin
    C:\bin> echo @php "%~dp0phpunit.phar" %* > phpunit.cmd
    C:\bin> exit
    
  • Откройте новую командную строку и убедитесь, что вы можете выполнить PHPUnit с любого пути:

    C:\Users\username> phpunit --version
    PHPUnit x.y.z by Sebastian Bergmann and contributors.
    

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

Ответ 6

Я была такая же проблема. Для меня это произошло после того, как я удалил класс dir и забыл обновить composer.json.

Исправление было просто обновлять массив classmap в composer.json

Ответ 7

Я думаю, что это происходит из-за ошибки кэша композитора. Попробуйте очистить его кеш:

composer clearcache

затем снова запустите установщик

composer create-project --prefer-dist laravel/laravel blog