Anda di halaman 1dari 9

Inicio Libros Tutoriales Eventos Foro Buscar

Los archivos binarios de


Composer
Qu es un archivo binario de Composer?
Los archivos ejecutables o "archivos binarios" de Composer estn formados por cualquier
script de lnea de comandos que el paquete quiera poner a disposicin de sus usuarios.

Los scripts que no estn pensados para los usuarios del paquete, como por ejemplo
scripts de instalacin o de compilacin del propio paquete, no se consideran archivos
binarios de Composer.

Cmo definir un archivo binario


open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Aade la propiedad bin en el archivo composer.json del proyecto e indica en un array
la ruta del archivo binario o las rutas de todos ellos si tu paquete define ms de un
archivo binario:

{
"bin": ["bin/my-script", "bin/my-other-script"]
}

La configuracin anterior le indica a Composer que debe copiar esos dos archivos
ejecutables (llamados comnmente archivos binarios) en el directorio vendor/bin/ del
proyecto.

La idea de los binarios es que los paquetes pongan a disposicin del usuario de forma
fcil scripts y utilidades que de otra forma estaran "enterrados" dentro de la jerarqua de
directorios de vendor/ .

Funcionamiento
Cuando tu proyecto define dependencias con paquetes que disponen de archivos
binarios, Composer analiza en primer lugar todos los binarios de todas las
dependencias. Despus, crea un enlace simblico a cada uno de ellos dentro del
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
directorio vendor/bin .

Imagina que un paquete llamado my-vendor/project-a define los siguientes archivos


binarios:

{
"name": "my-vendor/project-a",
"bin": ["bin/project-a-bin"]
}

Si ejecutas el comando composer install con este archivo composer.json , los


archivos binarios se ignoran y no se crea ningn enlace simblico. El motivo es que los
archivos binarios no se tienen en cuenta cuando se instala el paquete principal.

Si ahora por ejemplo otro paquete llamado my-vendor/project-b declara una


dependencia con el paquete my-vendor/project-a anterior:

{
"name": "my-vendor/project-b",
"requires": {
"my-vendor/project-a": "*"
}

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

Cuando ejecutes ahora el comando composer install con este archivo


composer.json , Composer buscar los archivos binarios definidos por las
dependencias del paquete project-b y las instalar en el directorio vendor/bin .

De esta forma, el archivo vendor/my-vendor/project-a/bin/project-a-bin se podr


ejecutar simplemente como vendor/bin/project-a-bin . Si tu servidor es de tipo Linux,
en vez de copiar los archivos binarios se crean enlaces simblicos.

Qu sucede con los sistemas Windows y los


archivos .bat?
Los paquetes gestionados con Composer no tienen que crear archivos de tipo .bat para
mantener la compatibilidad con Windows. El motivo es que Composer gestiona la
instalacin de los archivos binarios en Windows de una forma especial:

Composer crea un archivo .bat automticamente para ejecutar el archivo binario


en Windows.

Composer crea un archivo con el mismo nombre que el archivo binario original y
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
Composer crea un archivo con el mismo nombre que el archivo binario original y
similar a los enlaces simblicos de Linux, por si utilizas Composer a travs de
herramientas como Cygwin.

Si un paquete tiene requerimientos especiales ms all de los que proporciona


Composer, puedes crear tus propios archivos .bat . En este caso, no es necesario que
incluyas el archivo .bat como binario en la definicin del paquete.

Cmo cambiar el directorio de instalacin


de los binarios
Composer define dos formas diferentes para modificar el directorio en el que se instalan
los archivos binarios:

Utilizando la propiedad bin-dir del archivo composer.json

Estableciendo la variable de entorno COMPOSER_BIN_DIR

A continuacin se muestra un ejemplo de la primera opcin:

{
"config": {

open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
"bin-dir": "scripts"
}
}

Con esta configuracin, al ejecutar el comando composer install , los archivos binarios
de los paquetes se instalarn en el directorio scripts/ del proyecto, en vez del
tradicional directorio vendor/bin/ .

Comentarios

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

Ordenar por los mejores


Recomendar Compartir

S el primero en comentar...

S el primero en comentar.

Suscrbete d Aade Disqus a tu sitio web Privacidad

Fecha de publicacin
9 de junio de 2013
open in browser PRO version Are you a developer? Try out the HTML to PDF API pdfcrowd.com
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

Anda mungkin juga menyukai