web-dev-qa-db-fra.com

Est-il possible d'installer Composer globalement sous Windows?

J'ai lu la documentation globale d'installation pour Composer, mais uniquement pour les systèmes * nix:

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

Je serais si heureux de faire la même chose sous Windows, c'est le système d'exploitation de ma machine de développement. Je serais capable de courir

composer update

Depuis un dossier arbitraire où composer.json existe. L'interprète php.exe est déjà dans la variable PATH.

Un indice?

49
gremo

Sûr. Il suffit de mettre composer.phar quelque part comme C:\php\composer.phar, puis de créer un fichier de commandes quelque part dans le chemin PATH appelé composer.bat qui effectue les opérations suivantes:

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

Le "% *" répète tous les arguments transmis au script Shell.

Ensuite, vous pouvez courir faire composer update tout ce que vous voulez!

74
Lusitanian

Installer le compositeur

Sous Windows, vous pouvez utiliser Composer Windows Installer .

19

Allez dans le dossier php.exe.

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

ouvrez cmd ici et exécutez la commande ci-dessous.

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

composer.phar sera téléchargé dans le même dossier.

Créez un dossier nommé composer dans le lecteur C:// (ou où vous le souhaitez, pour les étapes à venir, rappelez-vous le chemin).

déplacez le fichier composer.phar dans le dossier C://composer.

Créez le fichier composer.bat dans le même dossier avec le contenu ci-dessous

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

créer un fichier nommé composer sans aucune extension.

exécuter la commande type NUL > composer dans CMD aidera à le faire rapidement,

Ouvrez ce fichier et placez-le en dessous de son contenu.

#!/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" $*

Sauvegarder.

Définissez maintenant path afin que nous puissions accéder à composer à partir de cmd.

  • Montrer bureau.

  • Clic droit sur le raccourci Poste de travail sur le bureau.

  • Cliquez sur Propriétés.

  • Vous devriez voir une section du Panneau de configuration - Panneau de configuration\Système et Sécurité\Système.

  • Cliquez sur Paramètres système avancés dans le menu de gauche.

  • Cliquez sur Variables d'environnement vers le bas de la fenêtre.

  • Sélectionnez PATH dans la liste des variables utilisateur.

  • Ajoutez votre chemin PHP (C:\composer) à votre variable PATH, séparée de la chaîne existante par un point-virgule.

  • Cliquez sur OK

Redémarrez votre machine.

Ou redémarrez Explorer uniquement en utilisant la commande ci-dessous dans CMD.

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

Article original avec captures d'écran ici: http://aslamise.blogspot.com/2015/07/installing-composer-manually-in-windows-7-using-cmd.html

12
Muhammed Aslam C

Cela peut être utile à quelqu'un:

Sous Windows 7, si vous avez installé Composer avec curl, vous pouvez le trouver dans un chemin similaire:

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

11
Anibe Agamah

Eh bien, maintenant cette question est un peu obsolète car il y a maintenant un installateur officiel qui "installera la dernière version de Composer et configurera votre PATH afin que vous puissiez simplement appeler composer à partir de n’importe quel répertoire de votre ligne de commande".

Vous pouvez l'obtenir à l'adresse: http://getcomposer.org/doc/00-intro.md#installation-windows

5
LucasBeef

J'utilise Composer-Setup.exe et cela fonctionne très bien ..__ Juste au cas où vous auriez besoin de savoir où est le composer.phar (à utiliser avec PhpStorm):

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

Un peu plus générique si vous placez le lot dans le même dossier que composer.phar:

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

J'écrirais cela comme un commentaire, mais le code n'y est pas disponible

3
player-one

Démarrer> Ordinateur: Propriétés> Modifier les paramètres> Avancé> Variables d'environnement> CHEMIN: Editer [ajouter cette chaîne (sans "") à la fin de la ligne ";C:\<path to php folder>\php5.5.3"] .. Ouvrez cmd et tapez composer Thats it :-)

3
Muflix

Une variante alternative (voir Réponse lusitanienne ) consiste à enregistrer les fichiers .phar en tant qu'exécutables sur votre système, à titre d'exemple, le fichier 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\" %*"

Il suffit de remplacer le chemin d'accès à php.exe dans votre exécutable PHP. Vous pouvez ensuite également étendre la variable de ligne de commande %PATHEXT% avec .PHAR, ce qui vous permettra de taper composer au lieu de composer.phar tant que composer.phar sera à l'intérieur du %Path%.

1
hakre

Malheureusement, toutes les bonnes réponses ici n'ont pas fonctionné pour moi. Donc, après l'installation de composer sur Windows 10, il me suffisait de définir system variable dans environment variables et tout fonctionnait bien.

 Windows 10 environment variable -> system variables

1
Overcomer

désolé de creuser ça, je veux juste partager mon idée, le moyen le plus simple pour moi est de renommer composer.phar en composer.bat et de le mettre dans mon PATH.

1
xgenvn

J'avais le même problème et lorsque j'ai vérifié l'environnement dans Windows 7, il pointait vers c:\users\monnom\appdata\composeur\version\bin qui n'existait pas . Le fichier était en fait situé dans C:\ProgramData\ComposerSetup\bin Correction de l'emplacement dans le paramètre d'environnement et cela fonctionnait 

1
Jose Ortiz

vous pouvez l'installer en utilisant cette ligne de commande 

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