Ответ 1
composer.phar может запускаться сам по себе, не нужно префикс его php
. Это должно решить вашу проблему (находясь в разнице bash $PATH и php include_path).
Я только что установил композитор в моей папке /usr/bin
, поэтому, когда из этой папки я запускаю php composer.phar
, я получаю справочную информацию о композиторе. Но, когда я пытаюсь запустить то же самое из другой папки, я получаю Could not open input file: composer.phar
.
Как вызвать php composer.phar
из любого места без проблем?
composer.phar может запускаться сам по себе, не нужно префикс его php
. Это должно решить вашу проблему (находясь в разнице bash $PATH и php include_path).
Вы можете выполнить глобальную установку :
Так как Composer работает с текущим рабочим каталогом, его можно установить в системном виде.
- Перейдите в каталог в вашем пути, например
cd /usr/local/bin
- Получить композитор
curl -sS https://getcomposer.org/installer | php
- Сделать исполняемый файл phar
chmod a+x composer.phar
- Перейдите в каталог проекта
cd /path/to/my/project
- Используйте Composer, как обычно,
composer.phar install
- При желании вы можете переименовать
composer.phar
вcomposer
, чтобы упростить его
Обновить. Иногда вы не можете или не хотите загружаться с /usr/local/bin
(некоторые из них имеют проблемы с разрешениями пользователей или ограниченным доступом), в этом случае вы можете попробовать это
curl -sS http://getcomposer.org/installer | php -- --filename=composer
chmod a+x composer
sudo mv composer /usr/local/bin/composer
Фон:
Фактически на веб-сайте getComposer четко указано, что, установите Composer, используя следующую команду curl,
curl -sS https://getcomposer.org/installer |php
И это, безусловно, делает то, что он намеревался сделать. И затем он говорит, чтобы переместить композитор .phar в каталог /usr/local/bin/composer, а затем будет доступен композитор по всему миру, используя следующую командную строку в терминал!
mv composer.phar /usr/local/bin/composer
Вопрос:
Таким образом, проблема, которая приводит меня к Google, заключается в том, что когда я выполнил вышеуказанную строку в терминале Mac OS X, он сказал, что Permission denied. Например:
mv: rename composer.phar to /usr/local/bin/composer: Permission denied
Ответ:
После ссылки я привел меня к решению, как к очарованию, и я благодарен этому. Я просто пропустил команду sudo до указанной выше командной строки "Переместить". Теперь моя команда Move выглядит следующим образом:
sudo mv composer.phar /usr/local/bin/composer
Password:
Он непосредственно предлагает вам пройти проверку подлинности и убедиться, что вы авторизованы. Поэтому, если вы введете действующий пароль, то будет выполнено перемещение, и вы можете просто проверить, установлен ли композитор на глобальном уровне, используя следующую строку.
composer about
Я надеюсь, что этот ответ помог вам расширить свое мнение и, наконец, решить вашу проблему.
Ура!
Сначала установите композитора, как указано в документации по установке . Я просто добавил сюда для справки.
curl -sS https://getcomposer.org/installer | php
а затем переместите файл в '/usr/local/bin'.
sudo mv composer.phar /usr/local/bin/composer
Попробуйте запустить composer -V
. Если вы получаете вывод типа Composer version
, за которым следует номер версии, композитор устанавливается успешно.
Если вы получаете какой-либо вывод, например composer: command not found
, используйте следующую команду для создания псевдонима для композитора. Таким образом, он будет выполнен по всему миру.
alias composer='/usr/local/bin/composer'
Теперь, если вы запустите composer -V
, вы получите результат как Composer version
, за которым следует номер версии.
Надеюсь, это поможет кому-то.
Просто запустите эту команду для установки композитора глобально
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
Просто переместите его в папку /usr/local/bin
и удалите расширение
sudo mv composer.phar /usr/local/bin/composer
Чтобы запустить его из другого места, вы можете использовать программу-композитор, поставляемую вместе с программой. Это в основном bash script. Если у вас его нет, вы можете создать его, просто скопировав следующий код в текстовый файл
#!/bin/sh
dir=$(d=$(dirname "$0"); cd "$d" && pwd)
if command -v 'cygpath' >/dev/null 2>&1; then
dir=$(cygpath -m $dir);
fi
dir=$(echo $dir | sed 's/ /\ /g')
php "${dir}/composer.phar" $*
Затем сохраните файл внутри папки bin и назовите его композитором без расширения файла. Затем добавьте папку bin в переменную среды f
Для MAC и LINUX используйте следующую процедуру:
Добавьте каталог, в котором находится композитор .phar для вас. PATH:
export PATH=$PATH:/yourdirectory
а затем переименуйте composer.phar в композитор:
mv composer.phar composer
Вы можете сделать простую глобальную установку, чтобы запустить ее из любого места
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
Этот https://getcomposer.org/doc/00-intro.md#globally рекомендует. Хорошо работает на Ubuntu 14.04 без проблем.
Таким образом, вам не нужно делать пример php compomser.phar show
, вы просто выполняете composer show
в любом каталоге, с которым работаете.