php laravel laravel-5.1 laravel-5.2

php - Error fatal al actualizar Laravel 5.1 a 5.2



laravel-5.1 laravel-5.2 (6)

Estoy siguiendo la guía de actualización oficial de 5.1 a 5.2. La primera subsección dice:

Si está instalando una versión beta de Laravel 5.2, agregue "minimum-stability": "beta" a su archivo composer.json.

Actualice su archivo composer.json para que apunte a laravel/framework 5.2.* .

Agregue symfony/dom-crawler ~3.0 y symfony/css-selector ~3.0 a la sección require-dev de su archivo composer.json.

Ahora, después de introducir los cambios anteriores y ejecutar la composer update , obtengo los siguientes errores:

PHP Fatal error: Class ''Illuminate/Routing/ControllerServiceProvider'' not found in /home/vagrant/Code/myproject/vendor/laravel/framework/src/Illuminate/Foundation/ProviderRepository.php on line 146

y

[Symfony/Component/Debug/Exception/FatalErrorException] Class ''Illuminate/Routing/ControllerServiceProvider'' not found

y

[RuntimeException] Error Output: PHP Fatal error: Class ''Illuminate/Routing/ControllerServiceProvider'' not found in /home/vagrant/Code/myproject/vendor/laravel/framework/src/Illuminate/Foundation/ProviderRepository.php on line 146

Los errores se generan después de que se realiza la actualización y se lleva a cabo la "Generación de archivos de carga automática".

¿Qué puede estar mal?

No parece un problema de paquete personalizado, sino uno central. ¿Debo continuar con la guía de actualización y ejecutar la composer update DESPUÉS de que todo se haya ajustado para adaptarse a la nueva versión del marco?

ACTUALIZAR

Ejecutar composer dump-autoload después no arroja los errores descritos anteriormente. Aún confuso, sin embargo.


Al actualizar de 5.1 a 5.2 en proyectos existentes, encontramos que ejecutar la composer update antes y después de eliminar las líneas para los proveedores

Illuminate/Routing/ControllerServiceProvider::class Illuminate/Foundation/Providers/ArtisanServiceProvider::class

era una secuencia necesaria para completar la actualización de laravel.

Ejecutar antes permitiría que laravel descargue y actualice las dependencias de la biblioteca del marco actual y luego se ejecute después de la eliminación (el compositor pudo completar sin problemas)

También descubrimos que cualquier valor en el archivo .env no puede tener espacios y debe estar rodeado de comillas para funcionar.


Elimine los dos proveedores de servicios de config / app.php

Illuminate/Foundation/Providers/ArtisanServiceProvider::class, Illuminate/Routing/ControllerServiceProvider::class,


Elimine los paquetes.php y config.php de la carpeta de caché bootstrap después de ejecutar composer dump-autoload


Encontré la solución aquí:

https://laravel.com/docs/5.2/upgrade#upgrade-5.2.0

Proveedores de servicio

Illuminate / Foundation / Providers / ArtisanServiceProvider debe eliminarse de su lista de proveedores de servicios en su archivo de configuración app.php.

Illuminate / Routing / ControllerServiceProvider debe eliminarse de su lista de proveedores de servicios en su archivo de configuración app.php.


La actualización del archivo app.php en config / resolvió un problema, pero con la introducción de la carpeta bootstrap / cache probablemente continuará teniendo el mismo error.

Ejecuté la actualización del compositor Antes de eliminar el archivo en caché, así que seguí presionando el mismo error. Asegúrese de eliminar primero el archivo bootstrap / cache / services.php.

Puede haber un comando artesanal para esto, pero me perdí totalmente este paso en la documentación.


Ya no hay Illuminate/Routing/ControllerServiceProvider .

Si fuera usted, compararía mi proyecto de aplicación con https://github.com/laravel/laravel/commits/develop , si por ejemplo mira https://github.com/laravel/laravel/blob/develop/config/app.php verá proveedores predeterminados para Laravel 5.2:

Illuminate/Auth/AuthServiceProvider::class, Illuminate/Broadcasting/BroadcastServiceProvider::class, Illuminate/Bus/BusServiceProvider::class, Illuminate/Cache/CacheServiceProvider::class, Illuminate/Foundation/Providers/ConsoleSupportServiceProvider::class, Illuminate/Cookie/CookieServiceProvider::class, Illuminate/Database/DatabaseServiceProvider::class, Illuminate/Encryption/EncryptionServiceProvider::class, Illuminate/Filesystem/FilesystemServiceProvider::class, Illuminate/Foundation/Providers/FoundationServiceProvider::class, Illuminate/Hashing/HashServiceProvider::class, Illuminate/Mail/MailServiceProvider::class, Illuminate/Pagination/PaginationServiceProvider::class, Illuminate/Pipeline/PipelineServiceProvider::class, Illuminate/Queue/QueueServiceProvider::class, Illuminate/Redis/RedisServiceProvider::class, Illuminate/Auth/Passwords/PasswordResetServiceProvider::class, Illuminate/Session/SessionServiceProvider::class, Illuminate/Translation/TranslationServiceProvider::class, Illuminate/Validation/ValidationServiceProvider::class, Illuminate/View/ViewServiceProvider::class, /* * Application Service Providers... */ App/Providers/AppServiceProvider::class, App/Providers/AuthServiceProvider::class, App/Providers/EventServiceProvider::class, App/Providers/RouteServiceProvider::class,