Esta reseña fue analizado por especialistas así garantizamos la exactitud de nuestro contenido.
Solución:
Parece que se puede definir el vendor
dir para ser otra cosa (plugins
en tu caso):
"config":
"vendor-dir": "plugins"
Luego, puede cambiar el nombre del paquete para que no tenga un directorio de nivel dentro, como:
"package": {
"name": "sfGuardPlugin",
Entonces tus composer.json
debería verse así:
"config":
"vendor-dir": "plugins"
,
"repositories": [
"type": "package",
"package":
"name": "sfGuardPlugin",
"version": "4.0.2",
"dist":
"url": "http://plugins.symfony-project.org/get/sfGuardPlugin/sfGuardPlugin-4.0.2.tgz",
"type": "tar"
],
"require":
"sfGuardPlugin": "4.0.*"
Editar
Con esta configuración, obtendrá la ruta (que es por supuesto no es bueno para Symfony):
plugins/sfGuardPlugin/sfGuardPlugin-4.0.2/
Encontré una solución con esto composer.json
:
"config":
"vendor-dir": "plugins"
,
"repositories": [
"type": "package",
"package":
"name": "sfGuardPlugin",
"version": "4.0.2",
"source":
"url": "http://svn.symfony-project.com/plugins/sfGuardPlugin/",
"type": "svn",
"reference": "branches/1.3/"
],
"require":
"sfGuardPlugin": "4.0.*"
También puedes usar composer/installers, un instalador de bibliotecas de compositores de marcos múltiples con el tipo de paquete “symfony1-plugin”. Así es como se ve mi archivo composer.json, para que pueda instalar tanto Symfony 1.4 (en lib/vendor) como los complementos en (/plugins):
"config":
"vendor-dir": "lib/vendor"
,
"repositories":
"symfony":
"type": "package",
"package":
"name": "symfony/symfony1",
"version": "1.4",
"dist":
"url": "https://github.com/symfony/symfony1/zipball/1.4",
"type": "zip"
,
"sfResquePlugin" :
"type": "package",
"package":
"name": "devpips/sfResquePlugin",
"type": "symfony1-plugin",
"version": "0.1",
"dist":
"url": "https://github.com/devpips/sfResquePlugin/zipball/master",
"type": "zip"
,
"require":
"composer/installers": "dev-master",
"symfony/symfony1": "1.4",
"devpips/sfResquePlugin":"0.1"
Ver COMPOSER_VENDOR_DIR
Variable ambiental.
Al configurar esta variable, puede hacer que Composer instale las dependencias en un directorio que no sea el proveedor.
Puede ser útil en el caso de que desee anular esto en un entorno particular, como Vagrant o Docker, donde no desea que esté en una carpeta/volumen compartido.
Y como dijo J0k, hay vendor-dir
en config
Sección de composer.json
El valor predeterminado es el proveedor. Puede instalar dependencias en un directorio diferente si lo desea. $HOME y ~ serán reemplazados por la ruta de su directorio de inicio en el directorio del proveedor y todas las opciones de *-dir a continuación.
Aquí puedes ver las comentarios y valoraciones de los usuarios
Nos puedes añadir valor a nuestro contenido informacional asistiendo con tu experiencia en las interpretaciones.