2014-08-27 3 views
2

Мой гид: http://phpunit.de/manual/current/en/installation.html#installation.composerГде установлены пакеты композиторов?

Это говорит Make sure you have ~/.composer/vendor/bin/ in your path.

На машине Win7, где бы это было?

Я предполагаю, что это мои папки проекта PHP, так как папка vendor появляется после composer install

Но каждый пакет имеет свою собственную папку бен ... я должен обновить свой путь каждый раз, когда я добавить пакет? Это неправильно.

UPDATE: После настройки композитора установить PHPUnit, phpcs, phploc, pdepend, phpmd, phpcpd и phpdox я получаю это:

.\project\vendor\bin 
.\project\vendor\composer 
.\project\vendor\nikic 
.\project\vendor\phpunit 
.\project\vendor\theseer 
.\project\vendor\zetacompnents 

.\project\vendor\bin содержит phpdox и phpdox.bat только.

UPDATE: После оказали помощь по другим вопросам с композитором, я понимаю, проблема здесь заключается в том, что композитор деинсталлировать пакеты от поставщика/бен - неожиданно.

Как только я добавляю "squizlabs/php_codesniffer": "2.0.0a2" к моему composer.json, то я получаю это когда я composer update

Updating dependencies (including require-dev) 
    - Removing phpmd/phpmd (2.0.0) 
    - Removing pdepend/pdepend (2.0.0) 

Почему эти пакеты теперь удалены? Мне они все еще нужны. Я отправлю это как новый вопрос.

ответ

2

Для пользователей Windows:

установлены пакеты, где командная строка в настоящее время находится, например, C: \ Users \ User \

Проверка на C: \ Users \ папка пользователя \ поставщика и его содержимое

использовать вместо "пользователь" имя вашей учетной записи, например, C: \ Users \ Maxcot \

Надеюсь, это поможет пользователям Windows.

0

Ответ на ваш второй вопрос: Нет, если вы устанавливаете пакеты по всему миру с помощью Composer, для «двоичных файлов» существует только одна папка vendor/bin, но на самом деле это зависит от того, будет ли данный пакет используйте это.

Если вы устанавливаете пакеты разработки в проекте (я бы порекомендовал делать это с помощью PHPUnit, по крайней мере, он позволяет кому-либо запускать тесты без необходимости устанавливать правильную версию), тогда файл vendor/bin является локальным и может быть доступ через относительный путь, поэтому не должно быть разницы между платформами.

Единственное, на что я не могу сейчас ответить, - это то, где Windows помещает папку .composer, потому что я использовал Composer только в Linux.

+0

:) Учитывая мои разочарования в последнее время, пытаясь заставить это работать, оптовая конвертация в Linux выглядит очень привлекательно. – Maxcot

+0

ОК, поэтому я могу получить доступ к поставщику/bin через относительный путь. Но другие инструменты не сидят в папке bin, поэтому мне нужно вручную поместить файлы phar в каталог bin ... так зачем использовать композитор?В руководстве по ссылке говорится: «Мы предполагаем, что эти инструменты находятся в $ PATH и могут быть вызваны с phpunit, phpcs, phploc, pdepend, phpmd, phpcpd и phpdox соответственно.» – Maxcot

+0

Какое руководство? Я понимаю, что теперь вы пытаетесь установить все эти инструменты QA через Composer, что я и предлагаю. Чтобы запустить их все, вы можете использовать домашний скрипт или создать что-то с Phing, Ant или так далее. Мой подход заключается в том, чтобы установить Phing глобально с помощью Composer, позволяя запускать сценарии сборки в проекте и заботиться обо всем остальном, включая эту проблему, которую вы испытываете, поскольку каждый запускаемый инструмент может быть рассмотрен в отдельной задаче, а вы не нужно возиться с командной строкой. Простой запуск чего-то типа 'phing qa' выполнил бы все. – Sven

Смежные вопросы