Chạy Trình soạn thảo trả về: không thể mở tệp đầu vào: composer.phar '


212

Tôi mới dùng symfony2 và đọc symblog . Trong chương thứ ba trong khi thử với đồ đạc dữ liệu, tôi đã thử lệnh:

php composer.phar update

nhưng tôi đã nhận được lỗi:

Could not open input file: composer.phar

Vì vậy, tôi đã googled một chút và cố gắng

php composer.phar install

nhưng vẫn nhận được lỗi tương tự. Vì vậy, vui lòng hướng dẫn cách đối phó với nhà soạn nhạc này để cài đặt các gói hoặc gói mới như dữ liệu cố định trong symfony2 bằng cách sử dụng wamp.


bạn đã cài đặt composer.phar đúng chỗ chưa ??
hizbul25

Tôi đã có vấn đề này trong khi cố gắng thiết lập nhà soạn nhạc trên toàn cầu. Tôi đã kết thúc việc thêm alias composer="php C:\\\\Users\\\\MyUsername\\\\bin\\\\composer.phar"vào tập tin .bashrc của tôi . Xấu xí, nhưng làm việc
Batandwa

14
Giải pháp cho người dùng windows nằm bên dưới bởi @Jamil, bạn phải soạn thảo người dùng chứ không phải nhà soạn nhạc
php.phar

Bạn không cần .phar nếu bạn đã cài đặt trình soạn nhạc, chỉ cần chạy cập nhật trình soạn thảo
meddy

Câu trả lời:


278

Nếu bạn làm theo hướng dẫn như sau:

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

Điều này cho bạn biết làm như sau:

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

Sau đó, có khả năng là bạn, giống như tôi, đã chạy các lệnh đó và không đọc phần tiếp theo của trang nói với bạn rằng hãy ngừng đề cập đến nhà soạn nhạc. Tên đầy đủ của nó và viết tắt nó là một tệp thực thi (bạn chỉ đổi tên bằng mv chỉ huy). Vậy đây:

$ php composer.phar update friendsofsymfony/elastica-bundle

Trở thành này:

$ composer update friendsofsymfony/elastica-bundle

37
Điều cần nhớ là nếu bạn đã cài đặt nó một cách chính xác (trên Windows) và thêm nó vào biến PATH của môi trường thì bạn không cần phải nhập php composer.phar và sử dụng trình soạn thảo thay thế.
AturSams

@Chris Moschini Có vẻ bạn có thể giúp tôi. Nhìn vào đây: stackoverflow.com/questions/52091827/ Cách
Người đàn ông thành công

chúng ta có phải cài đặt trình soạn thảo trong mỗi dự án không, tôi đã cài đặt trình soạn thảo bằng trình cài đặt của chúng
Sushant Bhargav

151

Tôi gặp vấn đề tương tự trên Windows và sử dụng một giải pháp khác. Tôi đã sử dụng tệp cài đặt Composer_Setup.exe được cung cấp bởi trang web của nhà soạn nhạc và nó có tính toàn cầu cài đặt .

Sau khi cài đặt, hãy đảm bảo biến PATH của bạn trỏ đến thư mục nơi composer.phar được lưu trữ. Điều này thường là C:\ProgramData\ComposerSetup\bin( ProgramData có thể là một thư mục ẩn ). Không cần phải nói, nhưng cũng chắc chắn rằng tệp thực thi PHP cũng nằm trong biến PATH của bạn.

Sau đó bạn có thể gọi

composer install

thay vì

php composer.phar install

6
Điều này cuối cùng cũng hoạt động, tôi không hiểu tại sao tôi không thể tìm thấy thông tin này ở bất cứ đâu trên trang web của nhà soạn nhạc ....
Henning Fischer

4
Cảm ơn bạn! Điều đó không được đề cập trong phần "sử dụng cơ bản" trong tài liệu Trình soạn thảo .. getcomposer.org/doc/01-basic-usage.md#installing-dependencies
Nick Rolando

Đã hơn hai năm kể từ câu trả lời này và các tài liệu vẫn chưa được cập nhật, vì vậy tôi gặp vấn đề tương tự. Cảm ơn!
Andy Mercer

105

Lý lịch

Thật hữu ích khi biết rằng có hai cách để cài đặt (và sử dụng) Trình soạn thảo: cục bộ dưới dạng tệp trong thư mục dự án của bạn hoặc trên toàn cầu dưới dạng thực thi hệ thống.

Cài đặt Trình soạn thảo cục bộ đơn giản có nghĩa là bạn đang tải xuống một tệp ( composer.phar- đó là Lưu trữ PHP ) vào thư mục dự án của bạn. Bạn sẽ phải tải xuống cho mọi dự án yêu cầu Trình soạn thảo.

Giống như một tệp PHP thông thường mà bạn muốn thực thi trên dòng lệnh, bạn sẽ phải chạy nó với PHP:

php composer.phar update

Về cơ bản cho biết phptệp thực thi để chạy tệp composer.pharvới updatetư cách là đối số.

Tuy nhiên, nếu bạn cài đặt nó trên toàn cầu , bạn có thể tự thực hiện trình soạn thảo, do đó bạn có thể gọi nó mà không cần php (và không phải tải xuống cho mọi dự án). Nói cách khác, bạn có thể sử dụng trình soạn nhạc như thế này:

composer update

Vì bạn đang thực thi php composer.phar updatevà bạn đang gặp lỗi Could not open input file: composer.phar, có lẽ bạn không cócomposer.phar trong thư mục hiện tại của mình.

Giải pháp

Nếu bạn đã cài đặt Trình soạn thảo trên toàn cầu, chỉ cần chạy composer updatethay vì php composer.phar update.

Nếu bạn chưa cài đặt Trình soạn thảo, hãy tải xuống PHAR bằng lệnh sau:

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

Điều này sẽ tải về trình cài đặt và chạy nó bằng cách sử dụng php. Trình cài đặt sẽ tải xuống Trình soạn thảo PHAR thực tế vào thư mục làm việc hiện tại của bạn và làm cho nó có thể thực thi được.

Để cài đặt Trình soạn thảo trên toàn cầu (tôi khuyên bạn nên điều này), sao chép tệp vào một vị trí trong của bạn PATH. Vị trí chính xác khác nhau trên mỗi hệ điều hành và thiết lập, xem https://getcomposer.org/doc/00-intro.md#globally để biết thêm thông tin.

Cá nhân, tôi thích cài đặt Trình soạn thảo trong thư mục nhà của mình vì vậy tôi không cần sudophải cài đặt hoặc cập nhật composertệp thực thi (có thể là một rủi ro bảo mật). Là tôi trên Linux, tôi sử dụng lệnh sau:

mv composer.phar ~/.local/bin/composer

1
Tôi ước tôi có thể cập nhật câu trả lời này nhiều hơn một lần. Bên cạnh việc trả lời câu hỏi, nó làm rõ câu hỏi về sự khác biệt giữa cài đặt Trình soạn thảo cục bộ và toàn cầu. Cảm ơn vì điều này.
NaijaProgrammer 12/12/18

49

Nếu bất cứ ai khác đến mức thấp này trên trang mà vẫn không tìm thấy câu trả lời hoạt động (như tôi đã làm), hãy sử dụng:

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

et voila! Một nhà soạn nhạc làm việc :-)


Cảm ơn bạn, Đại lý Smulder. ;)
Steven Ventimiglia

Làm việc cho tôi, nhưng tôi đã phải thay đổi một dòng để nó hoạt động chính xác $ alias composer = '/ usr / local / bin / composer'
Steph Moreau

Trên Mac OS XI của tôi đã thêm lệnh bí danh vào .bash_profile của tôi. Điều này sẽ làm cho bí danh liên tục cho các phiên cuối mới.
noctufaber

1
Dòng thứ hai không hoạt động mv composer.phar /usr/local/bin/composer.phar. Tôi gặp lỗi: mv: regular File '/usr/local/bin/composer.phar'không thể cài đặt: thiếu quyền.
Peter

12

Tôi thấy điều này làm việc vì tôi không cài đặt curl. Trên Windows 8 đã cài đặt XAMPP. Nó sẽ thêm nó vào bản dựng cục bộ của bạn. Tôi sử dụng .gitignore để tránh repo

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

Tôi đã nhận nó từ đây: https://getcomposer.org/doad/


12

Để giải quyết vấn đề này, điều đầu tiên bạn cần làm là lấy phiên bản cuối cùng của nhà soạn nhạc:

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

Tôi khuyên bạn nên di chuyển tập tin composer.phar sang một directoy bin bin toàn cầu, trong trường hợp của tôi (OS X), đường dẫn là:

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

hơn bạn cần tạo một tệp bí danh để dễ dàng truy cập

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

Nếu mọi thứ đều ổn, bây giờ là lúc xác minh phiên bản Trình soạn thảo của chúng tôi:

composer --version

Hãy làm cho nhà soạn nhạc trở nên tuyệt vời một lần nữa.


10

Điều này làm việc cho tôi:

composer install

Không có

php composer install

thậm chí không có phần mở rộng? Ngoài ra, vui lòng thêm 4 khoảng trắng vào dòng mã của bạn để chúng được định dạng dưới dạng mã
YakovL

4

Hôm qua tôi đã cố gắng cài đặt khung Yii2 trên Windows 10 và tôi gặp vấn đề tương tự (Không thể mở tệp đầu vào: composer.phar) chạy lệnh này:

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

Vấn đề là tập tin composer.phr không có trong thư mục hiện tại, bạn cần cung cấp đầy đủ đường dẫn composer.phr như

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

Hoặc bạn có thể tạo dự án yii2 bằng lệnh này:

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

Hoặc là

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


3

Tôi gặp vấn đề tương tự. Nó được giải quyết khi tôi làm cho nhà soạn nhạc có sẵn trên toàn cầu. Bây giờ tôi có thể điều chỉnh các lệnh từ bất kỳ nơi nào trong thư mục.

composer update

composer require "samplelibraryyouwant"


3
Điều này không cung cấp một câu trả lời cho câu hỏi. Để phê bình hoặc yêu cầu làm rõ từ một tác giả, hãy để lại nhận xét bên dưới bài đăng của họ.
Bas van Stein

@BasvanStein Có vẻ như là một nỗ lực để trả lời. Nếu bạn nghĩ rằng câu trả lời này là sai, thì bạn có thể đánh giá thấp nó.
Artjom B.

2

Trả lời dễ dàng, điều hướng đến thư mục mà bạn đã có tệp composer.json mà bạn muốn chạy (lý tưởng là thư mục dự án của bạn) sau đó tải xuống trình soạn thảo vào cùng thư mục, sau đó chạy ngay lệnh cài đặt như vậy:

 php composer.phar install

Điều này sẽ tự động tìm composer.json và chạy các tập lệnh cần thiết của bạn. Chúc may mắn. Công cụ này là một làn gió cho các pháp sư đầu cuối và hoàn toàn kỳ quái với phần còn lại của chúng tôi


2

Tôi đang sử dụng windows 8.0. Trong trường hợp của tôi để cài đặt hoặc cập nhật, tôi chỉ sử dụng cài đặt trình soạn thảo hoặc một cái gì đó khác thay vì trình soạn thảo php. Điều này làm việc cho tôi như

composer require google/apiclient:1.*

2

Xin chào các bạn, hãy làm theo các bước để khắc phục sự cố này trong MAC OS

  • Bước 1: đầu tiên chạy lệnh trong Terminal với thư mục dự án của bạn

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

  • Bước 2: Di chuyển composer.phar trong thư mục dự án của bạn

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

  • Bước 3: Thiết lập bí danh nhà soạn nhạc

    $ alias composer = '/ Ứng dụng / MAMP / htdocs / bashrushAPI / composer.phar'

  • Bước 4: Kiểm tra phiên bản soạn nhạc ngay bây giờ

    $ nhà soạn nhạc - đảo ngược

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

  • Bước 5: Xác nhận các thư mục dự án và tập tin được đặt dưới đây

    $ ls

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

  • Bước 6: Bây giờ cập nhật trình soạn nhạc

    $ nhà soạn nhạc. Cập nhật

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

  • Bước 7: Chạy dự án mẫu của bạn

    Nhà soạn nhạc $ php. Bắt đầu

    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


1

nhập mô tả hình ảnh ở đây

nhà soạn nhạc của bạn. Nên được đặt theo cách trên.


Tôi đang sử dụng windows8 và đã cài đặt exe của nhà soạn nhạc như trên getcomposer.org/doad . Sau đó, tôi đã sao chép tệp composer.phar vào dự án của mình theo cấu trúc được hiển thị bởi bạn. Các tập tin composer.json và composer.lock đã có sẵn vì đây là gói tải xuống symfony mặc định. Sau khi làm điều này khi tôi chạy lệnh udpate của nhà soạn nhạc, mất khoảng nửa giờ nhưng vẫn chưa hoàn thành. Chuyện gì vậy? Xin đề nghị. Cảm ơn trước!
dùng3291745

ok, bạn có sử dụng cmd cho lệnh không? Vì vậy, bạn nên thay đổi thư mục đúng cách. Cung cấp tốt hơn cấu trúc thư mục của bạn với ảnh chụp màn hình.
hizbul25

Stackoverflow không cho phép tôi tải lên hình ảnh vì tôi chỉ là người dùng mới sinh với ít điểm hoặc danh tiếng. Tôi đang chạy lệnh cập nhật trình soạn thảo trong thư mục C: \ wamp \ www \ Symfony \ và trong thư mục đó tôi có thể thấy composer.phar, composer.json, composer.lock thư mục ứng dụng, bin, nhà cung cấp, src và web.
dùng3291745

C: cd wamp \ www \ Symfony
hizbul25

Về vấn đề này, nhà phát triển luôn đề xuất linux cho php / python / ruby. :)
hizbul25

1

Đối với windows, tôi đã tạo composer.cmd và sử dụng văn bản dưới đây:

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

nơi composer.phar được cài đặt và c: \ chương trình \ php \ được thêm vào đường dẫn của tôi.

Không chắc chắn tại sao điều này không được thực hiện tự động.


1

Đối với Windows10 Pro, các bước sau khắc phục sự cố. chọn thuộc tính kiểm tra tùy chọn chương trình Unblock. chạy trình cài đặt, chạy lệnh CMD với quyền Admin. Tại dấu nhắc lệnh chạy composer --versionđể đảm bảo nó được cài đặt trên toàn cầu. bây giờ bạn có thể chạy composer require drush/drushĐiều này dành cho phụ thuộc drush bằng cách sử dụng trình soạn thảo.


1

Chỉ cần mở cmd với tư cách Quản trị viên và vào thư mục dự án của bạn và kiểm tra xem nó có hoạt động hay không bằng cách sử dụng lệnh soạn thảo.

Lỗi trên là do nhà soạn nhạc không thể truy cập trên toàn cầu. Vì vậy, bạn cần chạy "cmd" với tư cách Quản trị viên.

Điều này đang làm việc tốt cho tôi.


1

Chạy các dòng sau trong dòng lệnh:
curl -sS https://getcomposer.org/installer | php


0

Nhà soạn nhạc của bạn. Phải có trong tập tin Nguồn. Tôi đã có cùng một vấn đề và tôi chỉ cần cắt nhà soạn nhạc của mình. Thư mục của tôi vào thư mục phiên bản khung tiêu chuẩn của tôi, đó là toàn bộ dự án văn bản mạnh mẽ của tôi .


0

nếu trình soạn thảo đã cài đặt, tất cả những gì bạn cần là biết tệp composer.phar ở đâu (thư mục của nó) sau đó bạn chuyển đến dự án symfony nơi bạn có composer.json và từ thư mục đó bạn thực thi tệp composer.phar. Trong cửa sổ ở đây là những gì bạn phải làm.

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

Đó là tất cả




0

Tôi đã gặp phải vấn đề này khi cố gắng cài đặt trình soạn thảo trên máy Window 7 từ trang http://getcomposer.org/d Download . Vì đã có phiên bản soạn thảo hiện có (được cung cấp bởi công cụ Dev Desktop), việc cài đặt không thành công và cơ hội duy nhất là khắc phục sự cố này theo cách thủ công. (hoặc để loại bỏ trình soạn thảo công cụ Dev Desktop).

Dù sao, thông báo lỗi khá đơn giản (Không thể mở tệp đầu vào: composer.phar), sau đó chúng ta nên thông báo cho hệ thống nơi tệp được đặt.

Chỉnh sửa tập tin composer.bat và sẽ giống như:

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

Xem rằng composer.phar khôngnt có một đường dẫn tệp. Khi đứng trong một thư mục khác với thư mục có nhà soạn nhạc. Hệ thống được đặt, hệ thống có thể tìm thấy nó. Vì vậy, chỉ cần hoàn thành đường dẫn tệp composer.phar:

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

Mở lại bảng điều khiển cửa sổ của bạn và điều đó sẽ thực hiện các mẹo.

EDIT: điều này có vấn đề vì nó luôn sử dụng thư mục% ~ dp0% composerScript% làm thực thi soạn thảo. Sau đó, tất cả các cấu hình được thực hiện trong thư mục đó (ngoài việc đứng trên thư mục dự án hiện tại của bạn) chứ không phải trong thư mục dự án của bạn.

Cho đến nay tôi vẫn chưa tìm thấy một bản cài đặt soạn thảo thủ công nào để hoạt động trên toàn cầu trên Windows. Có lẽ bạn nên tiếp tục với trình soạn thảo để cài đặt windows được đề cập ở trên.


0

Không truy cập trình soạn thảo bởi nhà soạn nhạc composer.pher cài đặt

sử dụng cài đặt soạn nhạc


0

Bạn chỉ có thể thử lệnh này nếu bạn đã cài đặt Trình soạn thảo:

composer update 

hoặc nếu bạn muốn thêm một số gói cho nhà soạn nhạc của mình, hãy thử điều này:

composer require "/../"

0

sử dụng trình soạn thảo một mình mà không có php

giống :

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

0

Tôi đã khắc phục vấn đề tương tự với các bước dưới đây

  1. Mở thư mục dự án bằng Terminal ( mà bạn đang sử dụng tức là mintty )
  2. Bây giờ cài đặt trình soạn thảo trong thư mục này theo chỉ dẫn cụ thể trên https://getcomposer.org/doad/

php -r "sao chép (' https://getcomposer.org/installer ', 'composer-setup.php');"

php -r "if (hash_file ('SHA384', 'composer-setup.php') === 'the-cung cấp-hash-code') {echo 'Trình xác minh đã cài đặt';} ('nhà soạn nhạc-setup.php');} echo PHP_EOL; "

Trình soạn thảo php-setup.php php -r "hủy liên kết ('composer-setup.php');"

  1. Bây giờ chạy lệnh của bạn.

Bây giờ mọi thứ đều hoạt động tốt vì composer.phartệp có sẵn trong thư mục dự án hiện tại.

cảm ơn


0

Với tôi nó hoạt động chỉ cần bạn cần tập tin composer.pharcomposer.jsontrong dự án hiện tại. Lệnh là

php composer.phar update 

0

Lệnh như thế này:

composer.phar require intervention/image

lỗi: composer.phar: không tìm thấy lệnh

Tôi đã giải quyết vấn đề bằng cách làm theo quy trình này

tôi đặt nhà soạn nhạc trên toàn cầu và đổi tên composer.pharđể composersau đó chạy lệnh này composer require intervention/image. và bây giờ nó hoạt động tốt


0

Tôi biết rằng có thể câu trả lời của tôi quá cụ thể đối với máy chủ QNAP được nhúng, nhưng tôi đã kết thúc ở đây khi cố gắng cài đặt Yii:

Đối với tôi, bên trong một NAS QNAP thông qua PuTTY, sau khi thử tất cả các thủ thuật ở trên và cập nhật PATH thành vô ích, dòng cmd duy nhất hoạt động là:

 /mnt/ext/opt/apache/bin/php /usr/local/bin/composer create-project yiisoft/yii2-app-basic basic

Tất nhiên, điều chỉnh con đường của bạn cho phù hợp ...

Nếu tôi làm a which composer, tôi có một câu trả lời đúng, nhưng nếu tôi không làm which phpgì thì trả về.

Bên cạnh đó, cố gắng chạy

/mnt/ext/opt/apache/bin/php composer create-project yiisoft/yii2-app-basic basic

hoặc đề cập đến

composer.phar

đã không làm việc quá ...

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.