2012-07-04 14 views
62

Acabo de instalar el compositor en mi carpeta /usr/bin, así que cuando desde esa carpeta ejecuto php composer.phar obtengo la información de ayuda sobre el compositor. Pero, cuando intento ejecutar lo mismo desde otra carpeta obtengo Could not open input file: composer.phar.¿Cómo ejecutar el compositor desde cualquier lugar?

¿Cómo llamar al php composer.phar desde cualquier lugar sin problemas?

Respuesta

46

composer.phar se puede ejecutar por sí mismo, no es necesario que lo prefija con php. Esto debería resolver su problema (estar en la diferencia de $ PATH de bash y include_path de php).

+9

También puede cambiar el nombre a simplemente compositor y entonces simplemente puede hacer 'install' compositor. – Seldaek

+0

mi composer.phar es instalar. (Chekced usando php composer.phar) Pero no obtengo la ubicación. ¿Cómo encontrar la ruta de la ubicación de composer.phar? Estoy usando UBUNTU. –

+0

Si puede ejecutar 'php composer.phar', entonces es probable que esté en su directorio actual. – Maerlyn

85

se puede hacer un global installation:

Desde Compositor trabaja con el directorio de trabajo actual, es posible instalar de una manera todo el sistema.

  1. cambio en un directorio en su camino comocd /usr/local/bin
  2. Get Compositorcurl -sS https://getcomposer.org/installer | php
  3. hacer ejecutable Pharchmod a+x composer.phar
  4. cambiar en un directorio del proyectocd /path/to/my/project
  5. Uso Compositor como lo haría normalmentecomposer.phar install
  6. Opcionalmente se puede cambiar el nombre delcomposer.pharacomposerpara que sea más fácil

actualización: A veces usted no puede o no desea descargar en /usr/local/bin (algunos han experimentado problemas de permisos de usuario o de acceso restringido), en este caso se puede tratar este

  1. Abrir el terminal
  2. curl -sS http://getcomposer.org/installer | php -- --filename=composer
  3. chmod a+x composer
  4. sudo mv composer /usr/local/bin/composer
+3

No tienen en cuenta que debe cambiar el nombre del archivo para que se llame con solo 'composer' - buena nota aquí. –

+2

@AndrewAtkinson También puede cambiar el nombre antes de descargar con 'curl -sS https://getcomposer.org/installer | php - --filename = composer' – quantme

+0

Solo quiero decir gracias por esto. He tenido problemas para entender la lógica subyacente, y getcomposer.org no hace un buen trabajo al explicar esto, ¡gracias! Lo tengo funcionando. –

1

Para ejecutarlo desde otra ubicación puede usar el programa de compositor que viene con el programa. Básicamente es un script bash.Si no lo tienes puedes crear uno simplemente copiando el código siguiente en un archivo de texto

#!/bin/sh 

dir=$(d=$(dirname "$0"); cd "$d" && pwd) 

if command -v 'cygpath' >/dev/null 2>&1; then 
    dir=$(cygpath -m $dir); 
fi 

dir=$(echo $dir | sed 's/ /\ /g') 
php "${dir}/composer.phar" $* 

A continuación, guarde el archivo dentro de la carpeta bin y el nombre de compositor sin extensión de archivo. A continuación, añadir la carpeta bin a la variable de entorno f

0

Usted puede hacer una sencilla instalación global para ejecutarlo desde cualquier lugar

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

La página web https://getcomposer.org/doc/00-intro.md#globally recomienda esta manera. Funcionó bien en Ubuntu 14.04 no hay problema. De esta manera no necesita hacer como ejemplo php compomser.phar show, simplemente haga composer show, en cualquier directorio con el que esté trabajando.

16

Cómo ejecutar Compositor desde cualquier lugar (en MacOS X) a través del terminal

Antecedentes:

En realidad, en el sitio web getComposer que establece claramente que, instalar el Compositor utilizando el siguiente comando curl,

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

Y ciertamente hace lo que está destinado a hacer. Y luego dice mover el composer.phar al directorio /usr/local/bin/composer y luego el compositor estará disponible Globalmente, usando la siguiente línea de comando en el terminal.

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

Pregunta:

Así que el problema que me lleva a Google sobre él es cuando ejecuta la línea anterior de Mac OS X Terminal, se dice que, Permiso denegado. Al igual que la siguiente manera:

mv: rename composer.phar to /usr/local/bin/composer: Permission denied 

Respuesta:

Siguiendo link me llevó a la solución como un encanto y estoy agradecido de eso. Lo que me perdí fue sudo comando antes de la línea de comando "Mover" arriba mencionada. Ahora mi comando Mover es la siguiente:

sudo mv composer.phar /usr/local/bin/composer 
Password: 

Se le solicita directamente a autenticarse y ver si está autorizado. Por lo tanto, si ingresa una contraseña válida, se realizará el movimiento y podrá verificar si el compositor está instalado de manera global, utilizando la siguiente línea.

composer about 

Espero que esta respuesta te haya ayudado a ampliar tu vista y finalmente a resolver tu problema.

¡Salud!

+1

> Y luego dice mover el composer.phar al directorio/usr/local/bin/composer '/ usr/local/bin/composer' no es un directorio; es el nuevo nombre del archivo que se llamaría 'composer.phar' antes de eso. – XedinUnknown

+1

Funcionó para mí en macOS Sierra. – VSG24

+1

Gracias por el mv –

13

Primero instale el compositor como se menciona en el compositor installation documentation. Acabo de agregar aquí para referencia.

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

y luego mover el archivo a '/ usr/local/bin'.

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

intenta ejecutar composer -V. Si obtiene un resultado como Composer version seguido del número de versión, entonces el compositor se instalará correctamente.

Si obtiene cualquier salida como composer: command not found significa usar el siguiente comando para crear un alias para el compositor. Entonces será ejecutado globalmente.

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

Ahora si ejecuta composer -V significa que obtendrá la salida como Composer Version seguido por el número de versión.

Espero que esto ayude a alguien.

4

sólo tiene que ejecutar este comando para instalar el compositor mundialmente

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer 
+0

Esto resuelve mi problema al pedir una contraseña sudoer. Gracias –

1

Para MAC y LINUX utilizar el siguiente procedimiento:

Añadir el directorio donde se encuentra composer.phar a que RUTA:

export PATH=$PATH:/yourdirectory 

y luego cambie el nombre de composer.phar al compositor:

mv composer.phar composer 
3

Sólo moverlo a /usr/local/bin carpeta y eliminar la extensión

sudo mv composer.phar /usr/local/bin/composer 
Cuestiones relacionadas