Laravel 5 Error al abrir el arranque requerido /../ vendor / autoload.php

366

Recientemente instalé Laravel 5 a través del compositor. Intenté crear un nuevo controlador usando artesanal y me sale el siguiente error:

bootstrap /../ vendor / autoload.php. Error al abrir la secuencia: no existe tal archivo o directorio. La carpeta "vendedor" no existe.

¿Me estoy perdiendo de algo?

Scott
fuente

Respuestas:

307

Ejecutar compositor con --no-scripts

composer update --no-scripts  

Esto solucionará el problema. Intenté esto en Mac y Linux.

Shubhamoy
fuente
14
A veces, cuando ejecuta: "composer install", también obtiene ese error, por lo que la mejor opción es ejecutar primero: "composer install --no-scripts" y luego ejecutar composer install normalmente.
herohat
3
Documentación del compositor: --no-scripts: omite la ejecución de scripts definidos en composer.json. ( getcomposer.org/doc/03-cli.md#update )
Aine
Es mucho mejor usar la instalación del compositor, porque ejecutará todo lo necesario para instalar todas las dependencias, incluidas las secuencias de comandos.
Leandro Jacques
error Composer no pudo encontrar un archivo composer.json en C: \ composer Para inicializar un proyecto, cree un archivo composer.json como se describe en la sección "Comenzando" de
getcomposer.org
composer installno estaba trabajando para mí, composer update --no-scriptshizo el trabajo. ¡Gracias!
endo64
137

¿Qué sistema operativo estás usando? Para Windows: vaya aCommand Prompt

establecer camino a www/{ur project}

Para mi : www/laravel5

Luego escriba este comando: composer install

Instalará automáticamente toda la dependencia en vendor/

MONTS_MIND_Hacker
fuente
97

Ejecútelo composer installen su carpeta de proyecto raíz (o php composer.phar install).

dan-klasson
fuente
76

Resulta que no habilité openssl en mi php.ini, así que cuando creé mi nuevo proyecto con el compositor, lo instalé desde el origen. Cambié eso y corrí

composer update

ahora se creó la carpeta del proveedor.

Scott
fuente
57

¿Creó un nuevo proyecto o clonó un proyecto existente?

Si clonaste un proyecto existente, es muy importante ejecutar

composer install

De esa forma se instalarán todas las dependencias que faltan.

Pero si crea un nuevo proyecto, debe ejecutar este comando para crear un nuevo proyecto utilizando Composer

composer create-project laravel/laravel name-of-your-project
Dimitri Acosta
fuente
23

Encontré el mismo problema. Ocurrió porque el compositor no pudo instalar las dependencias especificadas en el archivo composer.json. intenta correr

composer install 

Si esto no resuelve el problema, asegúrese de que los siguientes módulos php estén instalados php-mbstring php-dom

Para instalar estas extensiones ejecute lo siguiente en la terminal

sudo apt-get install php-mbstring php-dom

una vez completada la instalación

intente ejecutar el comando en la carpeta raíz del proyecto

composer install 
naveddeshmukh
fuente
44
Instalé php-xml para que esto funcione en lugar de php-dom (que no existe en 16.04).
Evan Carroll
1
¡¡¡Excelente!!! ¡¡Funcionó!! Instalar php-xml en lugar de php-dom es la acción predeterminada para apt-get en ubuntu 16.04
user2928048
1
funcionó después de instalar mbstring y php-dom. ¡Gracias!
splunk
21

Simplemente ejecute esto dentro del directorio donde instaló su proyecto

composer install
Williem
fuente
1
Hice esto y funcionó, pero ¿por qué? Me gustaría entender la razón por favor.
Simon Suh
1
@SimonSuh por alguna razón (falla de red, se creó un nuevo proyecto sin pasar por todos los comandos, error durante la instalación manual, instalación de compilación personalizada ...) dependencias del compositor donde no está instalado o no está actualizado. Este comando instalará y actualizará todas las dependencias de su proyecto y eso solucionará el problema. espero que sea suficiente
Williem
20

Necesita regenerar el autoload.phparchivo. puede dump-autoloadhacerlo sin tener que pasar por una instalación o actualización.

utilizar

composer dump-autoload

para generar el autoload.phparchivo nuevamente en el /vendordirectorio.

Hamid Parchami
fuente
Esto funciona para mí pero tiene este error Error fatal: no se encontró la clase 'Illuminate \ Foundation \ Application'.
Adnan Haider
19

Seguir este paso a continuación resolvió mi problema. Puedes intentar

composer update --no-scripts 
composer update
RASEL RANA
fuente
1
¡También resolvió mi problema! Gracias
Crysfel
1
¡Muchas gracias!
GeekHades
16

Después de verificar la phpversión y mucha investigación, el problema estaba de Composerlado, así que simplemente ejecute el siguiente comando

composer install --ignore-platform-reqs

Hashmat Waziri
fuente
6

Cuando el nuevo proyecto creó el requisito de laravel para cargar proveedores para cargar automáticamente las bibliotecas, usamos la actualización del compositor para

composer update

Composer es un administrador de dependencias que le permite delegar la responsabilidad de administrar sus dependencias a un tercero.

Suresh Kumar Amrani
fuente
5

Solo ejecuta los siguientes comandos,

composer update

O

composer install
Raham
fuente
5

vaya a la carpeta de su proyecto a través de cmd. ejecuta el siguiente comando

composer update

instalará la carpeta y los archivos del proveedor que faltan en su proyecto.

pero en algunos casos, muestra un error como "Su configuración no permite la conexión a ....." en cmd.

para eso ve a tu compositor.json archivo ,

cambiar "secure-http": truea"secure-http": false

pero en algunos casos (como fue en mi caso) es posible que no encuentre esa línea en su archivo. para eso realiza la siguiente acción:

change "config": {
        "preferred-install": "dist"
}

a

"config": {
    "preferred-install": "dist",
    "secure-http": false
}

y corre de nuevo composer update comando.

Espero que esto resuelva el problema.

saadk
fuente
5

Esta solución funcionó para mí. El motivo es no tener una carpeta de proveedor en su aplicación.

Sigue estos pasos:

  1. si su proyecto tiene un composer.jsonarchivo, elimínelo

  2. entonces corre

    composer require phpspec/phpspec

Ese comando agrega la carpeta del proveedor a su proyecto

Jayani Sumudini
fuente
4

Simplemente configure un nuevo proyecto usando en composerlugar de laravelesto:

composer create-project --prefer-dist laravel/laravel myProje
Raheel Hasan
fuente
3

También tuve ese error. Pero nada de lo anterior resolvió el problema. Así que desinstalé y volví a instalar el compositor. Entonces lo hice composer update. y se solucionó el problema.

Srijan Karki
fuente
despuéscomposer install
Hos Mercury
3

Tuve el mismo problema con laravel y artesano, la solución:

php artisan key:generate
Marcelo Agimóvel
fuente
2

Antes de llevar a cabo las siguientes instrucciones, debe asegurarse de tener Composer instalado globalmente en su máquina; Abra su terminal Mac y ejecute el siguiente comando:

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

Una vez que Composer se haya instalado globalmente, ejecute el siguiente comando después de estar en el directorio del proyecto:

composer install

Una vez completado, actualice e instale todos los paquetes necesarios.

Krishneil
fuente
2

Recibimos un error porque nos falta la carpeta del proveedor en nuestro proyecto. El directorio del proveedor contiene nuestras dependencias de Composer.

Necesita /vendorcarpeta porque todos los paquetes están ahí e incluyen todas las clases que usa Laravel. Un problema puede resolverse después de seguir solo dos pasos:

composer update --no-scripts 
composer update
  • --no-scripts : omite la ejecución de scripts definidos encomposer.json
  • actualización del compositor : Esto buscará nuevas versiones de las bibliotecas que requirió en su proyecto. Si se encuentra una versión más nueva y es compatible con la restricción de versión definida en el composer.jsonarchivo, reemplazará la versión anterior instalada. El composer.lockarchivo se actualizará para reflejar estos cambios.

Estos dos comandos, recrearemos la carpeta del proveedor en nuestro proyecto y luego nuestro proyecto funcionará sin problemas.

Udhav Sarvaiya
fuente
1

Añadí composer.lockarchivo a .gitignore, después de cometer ese archivo a un error del repositorio se ha ido :)

Alupotha
fuente
1

Algo que me doy cuenta es que su archivo composer.json tendrá algún tipo de script como

"scripts": {
    "post-root-package-install": [
        "php -r \"copy('.env.example', '.env');\""
    ],
    "post-create-project-cmd": [
        "php artisan key:generate"
    ],
    "post-install-cmd": [
        "php artisan clear-compiled",
        "php artisan optimize"
    ],
    "pre-update-cmd": [
        "php artisan clear-compiled"
    ],
    "post-update-cmd": [
        "php artisan optimize"
    ],
    "post-autoload-dump": [
        "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
        "@php artisan package:discover"
    ]
},

lo que funciona para mi

"scripts": {
    "post-root-package-install": [
        "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
    ],
    "post-create-project-cmd": [
        "@php artisan key:generate"
    ],
    "post-autoload-dump": [
        "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
        "@php artisan package:discover"
    ]
},

la eliminación post install cmdayudó a ejecutar la instalación del compositor sin ningún problema.

Espero que esto ayude

¡¡Salud!!

usrNotFound
fuente
1

Elimine la carpeta del proveedor y ejecute el comando de instalación del compositor. Está funcionando al 100%

orxanzadeh
fuente
1

Le falta la carpeta del proveedor, probablemente su nuevo repositorio clonado o nuevo proyecto

la carpeta del proveedor está poblada por el binario del compositor que lee el archivo composer.json o los requisitos del sistema e instala empaquetado en la carpeta del proveedor y crea un script de carga automática que tiene todo clasificado

composer update
AWS PS
fuente
1

Eliminar proveedor entoncescomposer install

Hassan Raza
fuente
0

En mi caso, tuve que habilitar otra extensión, es decir, php_mbstring.dllen el php.iniarchivo antes de que pudiera funcionar. Está listado debajo extension=php_mbstring.dll. Encuéntrelo en el php.iniarchivo y elimine el punto y coma ( ;) delante de él y guarde el archivo.

Después de esto, install composervuelva a ejecutarlo en el directorio raíz de su aplicación Laravel y debería funcionar.

Bono
fuente
0

Si es usuario de Windows, puede desinstalar Composer. Luego instale Composer. Después de eso, instalas Laravel. Quizás funcione.

Sadik Alamin Tushar
fuente
0

mi problema es resuelto por

composer update
composer install
php artisan key:generate

si tiene algún otro problema, puede borrar el caché y configurar Borrar ruta de caché:

php artisan route:cache

Borrar vista de caché:

php artisan view:clear

Borrar caché de configuración:

php artisan config:cache
sanjay
fuente
0

Obtuve esto cuando lo hice en composer updatelugar de composer install.

Mick
fuente