我是symfony2和symblog的新手。在第三章中,当我尝试使用数据fixture时,我尝试了命令:

php的作曲家。phar更新

但我发现了一个错误:

无法打开输入文件:composer.phar

所以我谷歌了一下,试了试

php composer.phar install

但还是得到相同的错误。因此,请指导如何使用wamp在symfony2中安装新的扩展或数据fixture之类的编写器。


你的作曲家。法尔应放在上述方式。


如果你按照下面的指示去做:

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

我发现这工作,因为我没有卷曲安装。在Windows 8上安装XAMPP。它会将它添加到您的本地构建,我使用.gitignore来避免回购

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

我在这里找到了:https://getcomposer.org/download/


背景

了解有两种方法可以安装(和使用)Composer:在本地作为项目目录中的文件,或在全局范围内作为系统范围内的可执行文件。

在本地安装Composer仅仅意味着您正在下载一个文件(Composer . exe)。phar -这是一个PHP存档)到您的项目目录。您必须为每个需要Composer的项目下载它。

就像你想在命令行上执行的常规PHP文件一样,你必须用PHP运行它:

php composer.phar update

它基本上告诉php可执行文件运行文件编写器。Phar以update作为参数。

但是,如果您全局安装它,您可以使composer本身可执行,因此您可以在没有php的情况下调用它(并且不必为每个项目下载它)。换句话说,你可以这样使用composer:

composer update

因为你正在执行php composer。phar更新,你得到的错误无法打开输入文件:作曲家。Phar,你可能没有作曲家。Phar在当前目录中。

解决方案

如果全局安装了Composer,只需运行Composer update而不是php Composer。phar更新。

如果你还没有安装Composer,使用以下命令下载PHAR:

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

这将下载安装程序并使用php运行它。安装程序将下载实际的Composer PHAR到当前工作目录,并使其可执行。

要全局安装Composer(我推荐这样做),请将文件复制到PATH中的某个位置。具体位置因操作系统和设置而异,更多信息请参见https://getcomposer.org/doc/00-intro.md#globally。

就我个人而言,我更喜欢在我的主目录中安装Composer,这样我就不需要sudo来安装或更新Composer可执行文件(这可能存在安全风险)。当我在Linux上时,我使用以下命令:

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

我在Windows上遇到了同样的问题,并使用了不同的解决方案。我使用composer网站提供的composer . setup .exe安装文件,它会进行全局安装。

安装之后,确保你的PATH变量指向composer所在的目录。Phar被存储。这通常是C:\ProgramData\ComposerSetup\bin (ProgramData可能是一个隐藏目录)。这是不言而喻的,但也要确保PHP可执行文件也在PATH变量中。

然后你可以简单地打电话

composer install

而不是

php composer.phar install

你的作曲家。phar必须在源文件中。我也有同样的问题,我只是剪掉了我的作曲家。Phar到我的框架标准版文件夹,那里是我的整个强文本项目。


很简单,导航到已经有编码器的目录。你想要运行的Json文件(理想情况下是你的项目文件夹),然后下载composer到相同的文件夹中,然后立即运行安装命令,如下所示:

 php composer.phar install

这将自动找到作曲家。Json和运行所需的脚本。祝你好运。这些东西对终端巫师来说是小菜一碟,对我们其他人来说完全是匪夷所思的


如果已经安装了编写器,您只需要知道编写器的位置。Phar文件是(它的目录),然后您移动到您的symfony项目,在那里您有编写器。Json,然后从那个目录执行你的作曲器。phar文件。这是你必须做的。

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

这是所有


如果其他人在这一页上的位置这么低,仍然没有找到有效的答案(就像我一样),请使用以下方法:

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

果不其然!在职作曲家:-)


分两步。

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

Sudo PHP编写器。phar更新


我也有同样的问题。当我使composer全局可用时,这个问题就解决了。现在我可以从文件夹中的任何地方屯命令。

作曲家更新

作曲家需要“samplelibraryyouwant”


我用的是windows 8.0。在我的情况下,安装或更新我只是使用composer install或其他东西,而不是php composer.phar。这对我很有效 就像

composer require google/apiclient:1.*

你可以这样做

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

-sS标志表示不显示进度,只显示错误

然后

php composer.phar install

来自: 如何让cURL不显示进度条?

https://packagist.org/


昨天,我试图在Windows 10上安装Yii2框架,运行这个命令时遇到了同样的问题(无法打开输入文件:composer.phar):

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

问题是作曲家。PHR文件不在当前目录中,您需要给出完整路径编写器。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

Or

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

这招对我很管用:

composer install

没有

php composer install

用这个:

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

当我试图从http://getcomposer.org/download页面在windows 7机器上安装composer时,我已经接触到这个问题。由于有一个现有的合成版本(由acquia Dev Desktop工具提供),安装失败,唯一的机会是手动修复这个问题。(或删除Dev Desktop工具编写器)。

无论如何,错误消息是相当直截了当的(无法打开输入文件:composer.phar),然后我们应该告诉系统文件的位置。

编辑composer.bat文件,看起来应该像这样:

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

看那个作曲家。Phar没有文件路径。当站在不同的文件夹,而不是一个作曲家。Phar已被定位,系统将无法找到它。所以,完成作曲。Phar文件路径:

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

重新打开窗口控制台,这样就可以了。

编辑:这有一个问题,因为它总是使用%~dp0%composerScript% 文件夹作为编写器执行。所有的构型都在里面完成 文件夹(除了站在你当前的项目文件夹),而不是在你的项目文件夹。 到目前为止,我还没有找到一个是让手动编写器安装 在Windows上全球工作。也许你应该继续使用上面提到的用于windows安装的composer。


要解决这个问题,你需要做的第一件事是得到composer的最后一个版本:

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

我建议你搬作曲家。phar文件到全局“bin”目录,在我的情况下(OS X)路径是:

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

然后,您需要创建一个别名文件,以便于访问

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

如果一切正常,现在是时候验证我们的Composer版本了:

composer --version

让我们让作曲家再次伟大起来。


不访问作曲家通过 作曲家作曲。安装问题

使用 作曲家安装


如果你已经安装了Composer,你可以试试这个命令:

composer update 

或者如果你想添加一些bundle到你的作曲家尝试这个:

composer require "/../"

单独使用composer而不使用PHP

如:

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

我已经修复了以下步骤相同的问题

打开项目目录Using Terminal(您正在使用的终端,即mintty) 现在按照https://getcomposer.org/download/上给出的说明在这个目录中安装composer

PHP -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" php -r "if (hash_file('SHA384', 'composer-setup.php') === 'the-provided-hash-code') {echo '已验证安装程序';} else {echo '安装程序损坏';分离(“composer-setup.php”);} echo PHP_EOL;" php composer-setup.php PHP -r "unlink('composer-setup.php');"

现在执行你的命令。

现在一切都很顺利,因为作曲家。Phar文件在当前项目目录中可用。

谢谢


朋友们,请按照以下步骤在MAC OS中修复此问题

Step 1: first run the command in Terminal with your project directory $ curl -sS https://getcomposer.org/installer | php Step 2: Move the composer.phar in your project directory $ mv composer.phar /Applications/MAMP/htdocs/bashrushAPI/composer.phar Step 3: Setup alias the composer $ alias composer='/Applications/MAMP/htdocs/bashrushAPI/composer.phar' Step 4: Check the composer version now $ composer --version Composer version 1.7.2 2018-08-16 16:57:12 Step 5: Confirm the project folders and file placed on bellow $ ls CONTRIBUTING.md docker-compose.yml templates README.md logs tests composer.json phpunit.xml vendor composer.lock public composer.phar src Step 6: Now update composer $ composer.phar update Loading composer repositories with package information Updating dependencies (including require-dev) Nothing to install or update Generating autoload files Step 7: Run your sample project $ 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


对于windows,我创建了composer。CMD并使用下面的文本:

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

作曲家。Phar被安装,c:\programs\php\被添加到我的路径中。

不知道为什么这不是自动完成的。


与我的工作,你只需要文件编写器。Phar和作曲家。Json在当前项目中。 命令为

php composer.phar update 

对于Windows10 Pro,请按照以下步骤修复此问题。选择属性检查Unblock程序选项。运行安装程序,使用Admin权限运行命令CMD。在命令提示符下运行composer——version以确保它是全局安装的。你现在应该能够运行作曲家require drush/drush这是为了使用作曲家的drush依赖。


命令如下:

composer.phar require intervention/image

错误:作曲家。Phar:命令未找到

我按照这个过程解决了这个问题

我全局设置了composer并重命名了composer。Phar到composer,然后运行此命令composer需要干预/图像。现在运行正常了


我知道我的回答对于嵌入式QNAP服务器来说可能太具体了,但我在这里尝试安装Yii:

对我来说,通过PuTTY在QNAP NAS中,在尝试了以上所有技巧后,更新PATH无效,唯一有效的cmd行是:

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

当然,要相应地调整你的路径……

如果我使用哪个composer,我有一个正确的答案,但如果我使用哪个php,没有任何返回。

除此之外,试着逃跑

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

或指

composer.phar

也没用……


只需以管理员身份打开cmd,进入您的项目文件夹,并使用composer命令检查它是否工作。

上述错误是由于编写器不能全局访问。 因此,您需要以管理员身份运行“cmd”。

这对我来说很有效。


最简单直接的方法就是 -使用CD命令提示符导航到我的项目文件夹 -在CDM内输入composer以确保其已安装 -如果是,然后输入composer require ../你打算安装的扩展


对于通过HomeBrew安装composer的google用户: 为/usr/local/bin/composer创建一个符号链接

ln -s /usr/local/bin/composer /usr/local/bin/composer.phar

我得到这个错误“无法打开输入文件:作曲家。在安装Yii2时使用下面提到的命令。

php的作曲家。Phar create-project yiisoft/yii2-app-basic basic

对我有效的解决方案是,我把命令改为

编译器create-project yiisoft/yii2-app-basic

我希望它能有所帮助!


如果你使用的是Ubuntu/Linux并且你正在尝试运行

php的作曲家。Phar需要在命令行上进行干预/图像。

使用sudo composer require intervention/image代替。这会给你想要的东西。


如果你想创造作曲家。Phar文件在任何文件夹遵循此命令。

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

php -r "if (hash_file('sha384', 'composer-setup.php') === 'c5b9b6d368201a9db6f74e2611495f369991b72d9c8cbd3ffbc63edff210eb73d46ffbfce88669ad33695ef77dc76976') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

php composer-setup.php

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

在命令行中执行如下命令: curl -sS https://getcomposer.org/installer | php


我收到包裹时遇到了点麻烦。运行composer dumpautoload的Json脚本。

我有文件/usr/local/bin/composer。Phar,还有文件~/。bash_profile(在OSX)包含:

alias composer="php /usr/local/bin/composer.phar"

这允许编写器从命令行工作,但不允许脚本执行编写器。

解决办法是这样的:

$ cd /usr/local/bin
$ mv composer.phar composer
$ sudo chmod +x composer // +x allows the file to be executable, such as by CLI scripts

无法打开输入文件:/usr/local/bin/composer.phar

修复是更新~/。Bash_profile (sudo nano ~/.bash_profile),并将composer别名更改为:

alias composer="php /usr/local/bin/composer"

# ie: `.phar` extension removed

现在一切都像预期的那样。


在使用以下命令之前,我一直面临同样的问题。

composer self-update

希望这也适用于你!

如果没有,你可以在这里查看整个版本 https://blog.packagist.com/composer-2-0-is-now-available/


这是非常简单的,只是运行没有'PHP'前缀。

composer.phar update

这应该有用。


对于Windows:)

composer update
composer self-update 

你被要求获得用户许可

还有一个命令:

composer require that_extention_you_want 

(而不是第一个:PHP composer。phar that_extention_you_want)