簡體   English   中英

有什么方法可以在 Windows 上全局安裝 Composer 嗎?

[英]Is there any way to install Composer globally on Windows?

我已經閱讀了 Composer 的全局安裝文檔,但它僅適用於 *nix 系統:

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

我會很高興在 Windows 上做同樣的事情,那是我開發機器的操作系統。 我能跑

composer update

來自composer.json所在的任意文件夾。 解釋器php.exe已經在PATH變量中。

有什么線索嗎?

當然。 只需將composer.phar放在C:\\php\\composer.phar ,然后在PATH中的某個地方創建一個名為composer.bat的批處理文件,它執行以下操作:

@ECHO OFF
php "%~dp0composer.phar" %*

“%*”重復傳遞給shell腳本的所有參數。

然后你可以跑來跑去做composer update所有你想要的!

安裝Composer

在Windows上,您可以使用Composer Windows Installer

轉到php.exe找到的文件夾。

C:\\wamp\\bin\\php\\php5.5.12\\

在那里打開cmd,然后執行下面的命令。

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

composer.phar將下載到同一文件夾中。

C://驅動器中創建名為composer文件夾(或者您希望的任何位置,對於即將到來的步驟,請記住路徑)。

composer.phar文件移動到C://composer文件夾。

使用以下內容在同一文件夾中創建composer.bat文件

@ECHO OFF
php "%~dp0composer.phar" %*

創建名為composer文件,不帶任何擴展名。

在CMD中運行命令type NUL > composer將有助於快速完成它,

打開該文件並將其中的內容放在其中。

#!/bin/sh
dir=$(d=$(dirname "$0"); cd "$d" && pwd)
# see if we are running in cygwin by checking for cygpath program
if command -v 'cygpath' >/dev/null 2>&1; then
    # cygwin paths start with /cygdrive/ which will break windows PHP,
    # so we need to translate the dir path to windows format. However
    # we could be using cygwin PHP which does not require this, so we
    # test if the path to PHP starts with /cygdrive/ rather than /usr/bin.
    if [[ $(which php) == /cygdrive/* ]]; then
        dir=$(cygpath -m $dir);
    fi
fi
dir=$(echo $dir | sed 's/ /\ /g')
php "${dir}/composer.phar" $*

保存。

現在設置path ,所以我們可以從cmd訪問composer。

  • 顯示桌面。

  • 在桌面右鍵單擊“我的電腦”快捷方式。

  • 單擊屬性。

  • 您應該看到控制面板的一部分 - 控制面板\\系統和安全\\系統。

  • 單擊左側菜單上的高級系統設置。

  • 單擊窗口底部的Environment Variables。

  • 在用戶變量列表中選擇PATH。

  • 將PHP路徑(C:\\ composer)附加到PATH變量,通過分號與現有字符串分隔。

  • 單擊確定

重啟你的機器。

或者,僅在CMD中使用以下命令重新啟動explorer

taskkill /f /IM explorer.exe
start explorer.exe
exit

帶有屏幕截圖的原始文章: http//aslamise.blogspot.com/2015/07/installing-composer-manually-in-windows-7-using-cmd.html

這可能對某人有用:

在Windows 7上,如果您使用curl安裝了Composer,則可以在類似的路徑中找到它:

C:\\Users\\<username>\\AppData\\Roaming\\Composer

好吧,現在這個問題有點過時,因為現在有一個官方安裝程序“將安裝最新的Composer版本並設置你的PATH,這樣你就可以從你命令行的任何目錄中調用composer。”

您可以訪問: http//getcomposer.org/doc/00-intro.md#installation-windows

如果將批處理放在與composer.phar相同的文件夾中,則更通用一些:

@ECHO OFF
SET SUBDIR=%~dp0
php %SUBDIR%/composer.phar %*

我把它寫成評論,但代碼無效

開始>計算機:屬性>更改設置>高級>環境變量>路徑:編輯[在行尾添加此字符串(不帶“”) ";C:\\<path to php folder>\\php5.5.3" ] ..打開cmd並輸入作曲家的信息:-)

我使用Composer-Setup.exe,它工作正常。 萬一你需要知道composer.phar在哪里(與PhpStorm一起使用):

C:\ProgramData\ComposerSetup\bin\composer.phar

很抱歉挖掘這個,我只是想分享我的想法,對我來說簡單的方法是將composer.phar重命名為composer.bat並將其放入我的PATH中。

另一種變體(請參閱Lusitanian答案 )是將.phar文件注冊為系統上的可執行文件,示例性phar.reg文件:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.phar]
@="phar_auto_file"

[HKEY_CLASSES_ROOT\phar_auto_file\shell\open\command]
@="\"c:\\PROGRA~1\\php\\php.exe\" \"%1\" %*"

只需將php.exe的路徑替換為PHP可執行文件即可。 然后,您還可以使用.PHAR擴展%PATHEXT%命令行變量,只要composer.phar位於%Path%內,您就可以鍵入composer而不是composer.phar

我遇到了同樣的問題,當我在Windows 7中檢查環境時,它指向c:\\ users \\ myname \\ appdata \\ composer \\ version \\ bin,它不存在。 該文件實際位於C:\\ ProgramData \\ ComposerSetup \\ bin中修復了環境設置中的位置並且工作正常

不幸的是,這里所有好的答案對我都不起作用。 所以在Windows 10上安裝composer之后,我只需要在environment variables設置system variable就行了。

Windows 10環境變量 - >系統變量

您可以使用此命令行安裝它

 echo @php "%~dp0composer.phar" %* > composer.bat

我發現在Control Panel > Environment Variables > Variables for my localuser就在PATH變量中,如下所示:

C:\Users\MY_USER_NAME\AppData\Roaming\Composer\vendor\bin

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM