it-swarm.com.ru

Запуск Composer возвращает: «Не удалось открыть входной файл: composer.phar»

Я новичок в symfony2 и читаю symblog . В третьей главе, пытаясь использовать данные, я попробовал команду:

php composer.phar update

но я получил ошибку:

Could not open input file: composer.phar

Так что я немного погуглил и попробовал

php composer.phar install

но все равно получаю ту же ошибку. Поэтому, пожалуйста, расскажите, как справиться с этим composer, чтобы установить новые расширения или пакеты, такие как data-fixtures в symfony2, используя wamp.

193
user3291745

Если вы следовали следующим инструкциям:

https://getcomposer.org/doc/00-intro.md

Которые говорят вам сделать следующее:

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

Тогда, вероятно, вы, как и я, выполняли эти команды и не читали следующую часть страницы, в которой говорилось, что вам следует прекратить ссылаться на composer.phar по его полному имени и сокращать его как исполняемый файл (который вы просто переименовали с помощью mv команда). Итак, это:

$ php composer.phar update friendsofsymfony/elastica-bundle

Становится так:

$ composer update friendsofsymfony/elastica-bundle
244
Chris Moschini

У меня была такая же проблема в Windows, и я использовал другое решение. Я использовал установочный файл Composer_Setup.exe, предоставленный веб-сайтом композитора, и он выполняет global install. 

После установки убедитесь, что переменная PATH указывает на каталог, в котором хранится composer.phar. Обычно это C:\ProgramData\ComposerSetup\bin ( ProgramData может быть скрытым каталогом ). Само собой разумеется, но также убедитесь, что исполняемый файл PHP также находится в переменной PATH.

Вы можете просто позвонить

composer install

вместо 

php composer.phar install
129
Kimberly W

Фон

Полезно знать, что есть два способа установить (и использовать) Composer: локально как файл в каталоге вашего проекта или глобально как общесистемный исполняемый файл.

Локальная установка Composer просто означает, что вы загружаете файл (composer.phar - который является PHP Archive ) в каталог вашего проекта. Вам нужно будет скачать его для каждого проекта, для которого требуется Composer.

Как и обычный файл PHP, который вы хотите выполнить в командной строке, вам нужно будет запустить его с PHP:

php composer.phar update

Что в основном говорит исполняемому файлу php запускать файл composer.phar с аргументом update.

Однако, если вы установите его глобально , вы можете сделать сам Composer исполняемым, чтобы вы могли вызывать его без php (и не нужно загружать его для каждого проекта). Другими словами, вы можете использовать composer следующим образом:

composer update

Так как вы выполняете php composer.phar update, и вы получаете ошибку Could not open input file: composer.phar, у вас, вероятно, нет composer.phar в вашем текущем каталоге.

Решение

Если Composer установлен глобально, просто запустите composer update вместо php composer.phar update.

Если у вас еще не установлен Composer, загрузите PHAR с помощью следующей команды:

curl -sS https://getcomposer.org/installer | php

Это загрузит установщик и запустит его с помощью php. Установщик загрузит фактический PHAR Composer в ваш текущий рабочий каталог и сделает его исполняемым.

Чтобы установить Composer глобально (я рекомендую это), скопируйте файл в папку в вашей PATH. Точное местоположение зависит от операционной системы и настроек, см. https://getcomposer.org/doc/00-intro.md#globally для получения дополнительной информации.

Лично я предпочитаю устанавливать Composer в свой домашний каталог, поэтому мне не нужен Sudo для установки или обновления исполняемого файла composer (что может быть угрозой безопасности). Поскольку я работаю в Linux, я использую следующую команду:

mv composer.phar ~/.local/bin/composer
91
Nic Wortel

Если кто-то еще зашел так низко на странице и все еще не нашел рабочего ответа (как я), используйте это:

$ curl -sS https://getcomposer.org/installer | php
$ mv composer.phar /usr/local/bin/composer.phar
$ alias composer='/usr/local/bin/composer.phar'
$ composer --version

и вуаля! Работающий композитор :-)

41
Stan Smulders

Я обнаружил, что это сработало, так как у меня не было установлено curl. На Windows 8 с установленным XAMPP. Он добавит его в вашу локальную сборку. Я использую .gitignore, чтобы избежать репо

php -r "readfile('https://getcomposer.org/installer');" | php

Я получил это отсюда: https://getcomposer.org/download/

11
purencool

Чтобы решить эту проблему, первое, что вам нужно сделать, это получить последнюю версию composer:

curl -sS https://getcomposer.org/installer | php

Я рекомендую вам переместить файл composer.phar в глобальную директорию «bin», в моем случае (OS X) путь:

mv composer.phar /usr/local/bin/composer.phar

чем вам нужно создать файл псевдонимов для быстрого доступа 

alias composer='/usr/local/bin/composer.phar'

Если все в порядке, пришло время проверить нашу версию Composer:

composer --version

Давайте снова сделаем композитора великим.

8
Achref Gassoumi

Это сработало для меня:

composer install

Без 

php composer install
8
Mohamed Fanane

Вчера я пытался установить Yii2 framework на Windows 10, и у меня возникла та же проблема (не удалось открыть входной файл: composer.phar) при выполнении этой команды:

php composer.phar create-project yiisoft/yii2-app-advanced advanced 2.0.9

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

php C:\ProgramData\Composer\bin\composer.phar create-project yiisoft/yii2-app-advanced advanced 2.0.9

Или вы можете создать проект yii2 с помощью этой команды:

 composer create-project yiisoft/yii2-app-advanced advanced 2.0.9

Или же

composer.phar create-project yiisoft/yii2-app-advanced advanced 2.0.9
3
Muhammad Shahzad

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

composer update

composer require "samplelibraryyouwant"

3
Kiren Siva

Использовать этот :

php -r "readfile('https://getcomposer.org/installer');" | php
3
Fabio Valencio

Простой ответ, перейдите в каталог, где у вас уже есть файл composer.json, который вы хотите запустить (в идеале, в папку вашего проекта), затем загрузите composer в ту же папку, а затем сразу же выполните команду установки, например, так:

 php composer.phar install

Это автоматически найдет composer.json и запустит необходимые скрипты. Удачи. Этот материал - бриз для конечных волшебников и совершенно странный для всех нас

2
ColossalChris

Привет друзья, следуйте инструкциям, чтобы исправить эту проблему в MAC OS

  • Шаг 1: сначала запустите команду в Терминале с вашим каталогом проекта

    $ curl -sS https://getcomposer.org/installer | PHP

  • Шаг 2: Переместите composer.phar в каталог вашего проекта

    $ mv composer.phar /Applications/MAMP/htdocs/bashrushAPI/composer.phar

  • Шаг 3: Настройте псевдоним композитора

    $ alias composer = '/ Applications/MAMP/htdocs/bashrushAPI/composer.phar'

  • Шаг 4: Проверьте версию композитора сейчас

    $ composer --version

    Composer version 1.7.2 2018-08-16 16:57:12

  • Шаг 5: Подтвердите папки проекта и файл, расположенный ниже

    $ ls

    CONTRIBUTING.md docker-compose.yml templates README.md logs tests composer.json phpunit.xml vendor composer.lock public composer.phar src

  • Шаг 6: Теперь обновите композитор

    обновление $ composer.phar

    Loading composer repositories with package information Updating dependencies (including require-dev) Nothing to install or update Generating autoload files

  • Шаг 7: Запустите ваш пример проекта

    $ php composer.phar start

    php -S localhost:8080 -t public [Thu Sep 27 03:16:11 2018] ::1:51177 [200]: / [Thu Sep 27 03:16:11 2018] ::1:51178 [404]: /favicon.ico - No such file or directory

2
Murugan Vadivel

Я использую Windows 8.0. В моем случае для установки или обновления я просто использую composer install или что-то еще вместо php composer.phar. Это сработало для меня. 

composer require google/apiclient:1.*
2
user6367045

Для окон я сделал composer.cmd и использовал следующий текст:

php c:\programs\php\composer.phar %*

где composer.phar установлен и c:\Programs\php\добавлен в мой путь.

Не уверен, почему это не делается автоматически.

1
TamusJRoyce

enter image description here

ваш composer.phar должен быть расположен выше.

1
hizbul25

Для Windows10 Pro следующие шаги решают проблему. выберите свойства, отметьте опцию Разблокировать программу. Запустите установщик, запустите команду CMD с правами администратора. В командной строке запустите composer --version, чтобы убедиться, что он установлен глобально. теперь вы должны иметь возможность запускать composer require drush/drush Это для зависимости от drush с использованием composer.

1
Narayan P

Ваш composer.phar должен быть в исходных файлах. У меня была такая же проблема, и я просто вырезал мой composer.phar в мою framework-standard-edition папку, где находится весь мой сильный текст проект.

0
Lackeeee

Не обращайтесь к композитору с помощью Composer composer.pher install

используйте composer install

0
abey

Я достиг этой проблемы, когда пытался установить composer на компьютере с Windows 7 с http://getcomposer.org/download page. Так как существовала существующая версия (предоставленная утилитой acquia Dev Desktop), установка не удалась, и единственным шансом было исправить эту проблему вручную. (или для удаления Dev Desktop tool composer).

В любом случае сообщение об ошибке довольно простое (не удалось открыть входной файл: composer.phar), мы должны сообщить системе, где находится файл.

Отредактируйте файл composer.bat и должен выглядеть так:

@SET PATH=C:\Program Files (x86)\DevDesktop\php5_4;%PATH%
php.exe composer.phar %*

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

@SET PATH=C:\Program Files (x86)\DevDesktop\php5_4;;%PATH%
SET composerScript=composer.phar
php.exe "%~dp0%composerScript%" %*

Откройте вашу оконную консоль, и это должно сработать.

Правка: это имеет проблему, потому что он всегда использует% ~ dp0% composerScript% папка как композитор исполнения. Тогда все настройки выполняются в этом папка (кроме того, чтобы стоять в текущей папке проекта), а не в папке вашего проекта.

До сих пор я не нашел, чтобы сделать ручную установку композитора в работать глобально на Windows. Возможно, вам следует продолжить с composer для установки Windows, упомянутой выше.

0
mariano_c

Вы можете просто попробовать эту команду, если вы уже установили Composer:

composer update 

или, если вы хотите добавить пакет к вашему композитору, попробуйте это:

composer require "/../"
0
jabir

использовать один композитор без php 

лайк :

composer create-project --prefer-dist --stability=dev developeruz/yii-vue-app basic
0
mohammad nazari

У меня это работает, просто вам нужны файлы composer.phar и composer.json в текущем проекте. Команда

php composer.phar update 
0
isiariana

Я исправил ту же проблему с помощью следующих шагов

  1. Откройте каталог проекта Используя Терминал (который вы используете, т.е. mintty)
  2. Теперь установите composer в этом каталоге в соответствии с указанными инструкциями на https://getcomposer.org/download/

php -r "copy (' https://getcomposer.org/installer ', 'composer-setup.php');"

php -r "if (hash_file ('SHA384', 'composer-setup.php') === 'the-обеспеченный-хэш-код') {echo 'Установщик проверен';} else {echo 'Установщик поврежден'; отсоединить ('composer-setup.php');} echo PHP_EOL; "

php composer-setup.php php -r "unlink ('composer-setup.php');"

  1. Теперь запустите вашу команду.

Теперь все работает нормально, потому что файл composer.phar доступен в каталоге текущего проекта.

спасибо 

0
Anoop Saini

использовать два шага.

curl -sS https://getcomposer.org/installer | PHP

Sudo php composer.phar обновление

0
Mathesh Raj

если composer уже установлен, все, что вам нужно, это узнать, где находится файл composer.phar (его каталог), после чего вы переместитесь в свой проект symfony, где у вас есть composer.json, и из этого каталога вы запустите свой файл composer.phar. В окнах есть то, что вы должны сделать.

symfony project directory_where_composer.json_is>php the_directory_where_composer.phar_is/composer update 

Это все

0
aidonsnous

Ты можешь сделать

curl -sS https://getcomposer.org/installer | php

Значение флага -sS не показывает прогресс, показывает ошибки

а потом

php composer.phar install

from: Как мне заставить cURL не показывать индикатор выполнения?

https://packagist.org/

0
Kyrre