为了在laravel中使用,全局安装Composer?

3
我在全局安装composer时遇到了一些问题。我将composer安装在了'C:\wamp\bin\php\php5.4.12'目录下(我使用的是WAMP),并使用命令php composer.phar create-project在'C:\wamp\www\project'中创建了一个项目。
问题在于,只有当我在安装它的目录(bin\php\php5.4.12)中时,才能使用php composer.phar命令,而这个目录已经在我的路径变量中。此外,在该目录中还包括一个composer.bat文件:"@ECHO OFF" "php '%~dp0composer.phar' %*",应该可以使其全局化。但是,当我在另一个目录(我的项目目录)中使用cmd命令使用composer命令时,会弹出一个错误提示:

"@ECHO OFF" "php 'C:\wamp\bin\php\php5.4.12\composer.phar... "

"@ECHO OFF" 不是内部或外部命令、可执行的程序或批处理文件。

请问有人知道问题出在哪里吗?
3个回答

11

找到你的 `php.exe` 文件,它可能在以下位置:

C:\wamp\bin

or

C:\wamp\bin\php
在相同的文件夹中创建一个文件(使用记事本)composer.bat,并在其中添加此行:
@php C:\wamp\bin\php\php5.4.12\composer.phar %*

关闭终端并尝试在任何地方运行Composer:

cd\
composer --version

谢谢,看起来它能够工作。但有一个问题,如果我输入“composer install”或任何其他命令,它不会执行,只显示所有composer信息(选项,可用命令等)。你有什么想法吗? - user3231419
你必须在一个包含composer.json文件的目录中。 - Antonio Carlos Ribeiro
不,批处理文件必须传递所有命令行选项!它目前没有这样做。 - Sven

1
尽管正确的答案已经发布,但值得一提的是,Composer有一个Windows安装程序https://getcomposer.org/Composer-Setup.exe。您可以像安装其他exe文件一样进行安装。在安装过程中,它会要求输入php.exe的路径。它通常位于C:\ wamp \ bin \ php \ php {php-version} \ php.exe 安装完成后,您需要通过单击右下角任务栏中的WAMP图标来手动启用php_openssl、php_curl、php_socket。然后在PHP-> PHP扩展中,只需单击上述三个扩展即可启用它们。
您还需要从所有php.ini文件中启用openssl,方法是将“; extension = php_openssl.dll”更改为“extension = php_openssl.dll”,即通过删除; 来取消注释上面的行。

Reference: http://perials.com/install-composer-on-windows-and-wamp/


0

此处所述,在您的Windows机器上打开命令提示符,然后逐个执行命令或创建批处理文件并执行它。注意您的目录。最佳选择是:

cd C:\
mkdir ComposerSetup
cd ComposerSetup
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"

现在创建一个批处理文件composer.bat,将该行粘贴到其中并保存:
@php C:\ComposerSetup\composer.phar %*

现在将C:\ComposerSetup添加为您的Path环境变量。关闭提示符。打开一个新的命令提示符,然后键入composer --v。基本上,您现在是从提示符运行composer.bat文件。

如果您想将composer.phar和composer.bat文件保存在其他位置,那没问题,只需正确更改目录位置即可。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接