Sei sulla pagina 1di 10

Inicio Libros Tutoriales Eventos Foro Buscar

Cmo solucionar los errores


habituales de Composer
A continuacin se explica cmo solucionar los errores ms habituales que se producen
al utilizar Composer para gestionar las dependencias de los proyectos PHP.

Errores generales
1. Cuando se produzca cualquier error, ejecuta primero el comando composer diagnose
para que Composer realice una serie de comprobaciones automticas de los problemas
habituales. Si todo est bien, puede seguir con los siguientes pasos.

2. Asegrate de actualizar de vez en cuando Composer ejecutando el comando composer


self-update . Si hace ms de 30 das que no has actualizado Composer, vers un
mensaje de aviso cada vez que ejecutes un comando de Composer.
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
3. Comprueba que tu sistema est preparado para ejecutar Composer. Para ello, ejecuta
las comprobaciones del instalador de Composer mediante el comando curl -sS
https://getcomposer.org/installer | php -- --check

4. Asegrate de que est instalando las dependencias indicadas en el archivo


composer.json del proyecto. Para ello, borra las dependencias existentes y vuelve a
instalarlas (ejecuta por ejemplo el comando rm -rf vendor && composer update -v ).
De esta forma te aseguras de que el archivo composer.lock no est interfiriendo con la
instalacin de las dependencias deseadas.

Cmo solucionar el error Package not found


1. Asegrate de que no has cometido ningn error al escribir el nombre de los paquetes
o versiones en el archivo composer.json . Aunque te parezca innecesaria, esta
comprobacin te ahorrar mucho tiempo, ya que es una de las causas ms comunes de
errores en Composer.

2. Asegrate de establecer un valor correcto para la propiedad minimum-stability. Si no


sabes qu valor utilizar, empieza por "minimum-stability": "dev" y luego ya ajustars
su valor a tus necesidades.
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
3. Si los paquetes que ests instalando no se encuentran en Packagist, asegrate de
definirlos dentro del archivo composer.json principal del proyecto.

4. Utiliza el mismo nombre de paquete y de vendor en todas las ramas y etiquetas de


tu repositorio, sobre todo cuando utilices la propiedad replace con tus forks de
repositorios desarrollados por terceros.

Cmo solucionar el error Package not found


on travis-ci.org
1. Comprueba primero todos los errores explicados en la seccin anterior.

2. Cuando se producen dependencias cclicas (una paquete depende de otro que a su


vez depende del primero) es posible que Composer no pueda detectar correctamente la
versin del paquete que debe instalar. Si se trata de clonar un repositorio mediante Git,
seguramente Composer pueda solucionar el problema. Pero si se ejecuta Composer a
travs de un servidor de integracin continua como Travis, el problema no es tan fcil de
solucionar.

La solucin ms eficaz suele ser definir la versin mediante una variable de entorno
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
llamada COMPOSER_ROOT_VERSION . Si estableces su valor por ejemplo a dev-master , la
versin del paquete principal del proyecto ser dev-master .

Si utilizas Travis, aade la siguiente configuracin en tu archivo .travis.yml :

before_script: "COMPOSER_ROOT_VERSION=dev-master composer install"

Cmo redefinir la versin de una


dependencia
Imagina que tu proyecto depende de un paquete llamado A que a su vez depende de
una versin concreta de un paquete llamado B (supongamos que depende de la versin
0.1 ). Si tu proyecto tambin depende del paquete B pero necesitas una versin
diferente (por ejemplo, 0.11 ), la solucin consiste en crear un alias de la versin 0.11
para que parezca que es la versin 0.1 . Para ello, aade lo siguiente en tu archivo
composer.json :

{
"require": {
"A": "0.2",

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
"B": "0.11 as 0.1"
}
}

Cmo solucionar los problemas de memoria


Si al ejecutar comandos de Composer te encuentras con mensajes de error como el
siguiente:

PHP Fatal error: Allowed memory size of XXXXXX bytes exhausted ...

La solucin consiste en aumentar la memoria disponible para PHP mediante la opcin


de configuracin memory_limit del archivo php.ini .

Internamente Composer aumenta la memoria disponible en PHP hasta 512M mediante


la propiedad memory_limit . Si a pesar de ello se siguen produciendo errores, puedes
informar del error producido en la seccin de issues del repositorio de Composer:
github.com/composer/composer/issues.

Si quieres conocer el valor actual que tienes configurado para la opcin memory_limit ,
ejecuta el siguiente comando:

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
$ php -r "echo ini_get('memory_limit').PHP_EOL;"

Aumenta este valor en el archivo de configuracin php.ini de PHP:

; el valor -1 indica que no hay lmite de memoria


memory_limit = -1

Si lo prefieres, puedes aumentar temporalmente la memoria disponible aadiendo el


parmetro -d memory_limit=1 a cada comando de PHP que ejecutes:

$ php -d memory_limit=-1 composer.phar <...>

Cmo solucionar el problema The system


cannot find the path specified
Este problema slo sucede cuando ejecutas Composer en sistemas Windows. Para
solucionarlo:

1. Ejecuta la aplicacin regedit .


open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
2. Busca la clave AutoRun dentro de
HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor o
HKEY_CURRENT_USER\Software\Microsoft\Command Processor .

3. Comprueba si el valor de esta clave contiene alguna ruta a un archivo o directorio


inexistente. En caso afirmativo, borra todas esas rutas inexistentes y guarda los
cambios.

Comentarios

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
1 Comentario LibrosWeb
1 Acceder

Ordenar por los mejores


Recomendar Compartir

nete a la conversacin...

Alarmado hace un ao
Cuando no me deja instalar ningun plugin que puede ser lo que este pasando


Responder Compartir

Suscrbete d Aade Disqus a tu sitio web Privacidad

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Fecha de publicacin
2 de junio de 2013

ETIQUETAS POPULARES
composer css diseo html javascript php programacin sistemas symfony

SUSCRBETE GRATIS

RSS Todos los tutoriales

RSS Tutoriales de diseo

RSS Tutoriales de programacin

3.757
2006-2017 LibrosWeb.es Contacto Novedades Condiciones Privacidad

das online

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com

Potrebbero piacerti anche