запуск phpspec из windows CMD создает папки spec и src в vendor / bin вместо корня проекта

В последнее время я изучал phpspec и gulp и решил включить их в свой рабочий процесс.
Когда я установил phpspec через composer, я получил структуру файла:

  • продавец
    • бункер
      • phpspec

Есть больше файлов, но и папок, но они актуальны.

В моем CMD я сейчас указываю на корень моего проекта и пытаюсь запустить:

vendor/bin/phpspec

Однако я получаю сообщение об ошибке 'vendor' isn't recognizes as internal or external command...
поэтому я перешел в папку с мусором, выполнив cd vendor/bin а потом беги phpspec и это действительно работает. Тем не менее, когда я пытаюсь описать класс phpspec describe SeatsHandler он создает мои файлы не в корневом каталоге, он создает их внутри vendor/bin папка:

  • продавец
    • бункер
      • phpspec
      • спекуляция
      • ЦСИ

Я пытался увидеть, как я могу настроить это и читать о phpspec.yml, Я создал такой файл вместе с app каталог в моей главной папке (хотелось бы избавиться от каталога приложения):

    suites:
app_suite:
src_path: app

Я попытался поместить этот файл в мой основной каталог, но он не работал, я получил тот же результат, что и раньше. Я также попытался переместить этот файл в vendor/bin но безрезультатно.

Как я могу заставить phpspec создавать файлы в моем корневом каталоге, а не внутри vendor/bin? Кроме того, почему он игнорирует phpspec.yml?

РЕДАКТИРОВАТЬ:

Мне удалось заставить его работать, изменив мой phpspec.yml в:

    suites:
app_suite:
src_path: ../../src/
spec_path: ../../

И положить его в vendor/bin, Тем не менее, остается вопрос, как запустить phpspec, не заходя внутрь vendor/bin каталог в CMD?

0

Решение

в вашем файле composer.json просто добавьте "bin-dir": "bin" под config вот так:

{
"require-dev": {
"phpspec/phpspec": "~2.0"},
"config": {
"bin-dir": "bin"},
"autoload": {"psr-0": {"": "bin/src"}}
}

и ты получишь bin папка в корневом каталоге вместе с vendor каталог.

  • бункер
  • продавец

тогда вы можете запустить phpspec в вашем корневом каталоге точно так, как вы хотите.

1

Другие решения

Вы можете установить его глобально следующим образом;

composer global require phpspec/phpspec

теперь вы можете назвать это phpspec

0

По вопросам рекламы [email protected]