2015-12-01 2 views
12

Изнутри каталога, содержащего мой файл composer.phar, я не могу выполнять команды композитора.Композитор: Команда не найдена

я могу видеть, композитор работает, когда я исполняю

php composer.phar 

Но любые прямые высказывания композитора терпят неудачу.

Не уверен, если это имеет значение, но композитор был включен в клонированный репозиторий.

Я просто хочу установить одну Oauth-библиотеку, а затем, скорее всего, не коснуться Composer еще несколько месяцев, поэтому мне не нужно запускать ее по всему миру. Я просто смущен, почему я не могу запустить Composer из этого каталога.

+0

Windows, Mac или Linux машина:

Run ниже команды? – MiDri

+1

Что такое «прямое заявление композитора»? –

+0

'php composer.phar require foo/bar' – Sammitch

ответ

19

У вашей команды composer.phar отсутствует флаг для исполняемого файла, или он не находится внутри пути.

Первая проблема может быть исправлена ​​с помощью chmod +x composer.phar, а вторая - ./composer.phar -v.

У вас есть префикс исполняемых файлов, которые не находятся в пути с явной ссылкой на текущий путь в Unix, чтобы избежать перехода в каталог с исполняемым файлом с невинным именем, которое выглядит как обычная команда, но нет. Просто подумайте о cat в текущем каталоге, который не отображает файлы, но удаляет их.

Альтернативой, и лучше, исправить для второй задачи будет поместить файл composer.phar в месте, которое упоминается в пути

+0

Префикс ссылки на текущий каталог работал ./composer.phar -v. Спасибо за ответ, спасибо также за объяснение! –

30

эта проблема возникает, когда у вас установлен композитор локально. Чтобы сделать это глобально исполняемый файл, запустите следующую команду в терминале

sudo mv composer.phar /usr/local/bin/composer 
+0

Это отлично сработало для композитора 1.3.1 на OSX 10.10, спасибо – Davey

+0

"- sudo mv composer.phar/usr/local/bin/composer" или "sudo mv composer.phar/usr/local/bin/composer" это помогает если вы действительно используете блок кода – JGallardo

+1

Для меня эта команда работала после открытия новой консоли (чтобы вступить в силу) –

21

Я использую CentOS и имел такую ​​же проблему.

Я изменил /usr/local/bin/composer на /usr/bin/composer, и это сработало. установлен

curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/bin/composer

Проверьте Composer или не

composer --version

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