2017-01-23 5 views
0

Ich habe Laravel Controller und Routen erstellt. Ich überprüfe die Dateien, in denen alles drin ist. Es funktioniert gut mit Gehöft. Aber wenn ich es auf Server hochlade, gibt es mir einen Reflexionsfehler. Irgendeine Idee? Ich verwende Centos 7 mit php 5.6Laravel 5.3 Reflexionsfehler sogar Controller existiert

ReflectionException in Container.php line 749: 
Class App\Http\Controllers\Backend\Takeaway\package\PackageController does not exist 
in Container.php line 749 
at ReflectionClass->__construct('App\Http\Controllers\Backend\Takeaway\package\PackageController') in Container.php line 749 
at Container->build('App\Http\Controllers\Backend\Takeaway\package\PackageController', array()) in Container.php line 644 
at Container->make('App\Http\Controllers\Backend\Takeaway\package\PackageController', array()) in Application.php line 709 
at Application->make('App\Http\Controllers\Backend\Takeaway\package\PackageController') in Route.php line 203 
at Route->getController() in Route.php line 316 
at Route->controllerMiddleware() in Route.php line 278 
at Route->gatherMiddleware() in Router.php line 666 
at Router->gatherRouteMiddleware(object(Route)) in Router.php line 646 
at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 629 
at Router->dispatchToRoute(object(Request)) in Router.php line 607 
at Router->dispatch(object(Request)) in Kernel.php line 268 
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request)) in Pipeline.php line 53 
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Debugbar.php line 51 
at Debugbar->handle(object(Request), object(Closure)) in Pipeline.php line 137 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33 
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 46 
at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 137 
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 33 
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 104 
at Pipeline->then(object(Closure)) in Kernel.php line 150 
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 117 
at Kernel->handle(object(Request)) in index.php line 54 

Antwort

1

prüfen Namespace der Datei und der Route. Es muss wie folgt sein

<?php 
namespace App\Http\Controllers\Backend\Takeaway\package` 

Route muss Namespace Suffix enthalten:

Route::get('/url', 'Backend\Takeaway\[email protected]') 
    ->name('routename'); 

Das ist aufgrund eines Basisnamespace in RouteServiceProvider:

protected $namespace = 'App\Http\Controllers';

P. S. In jeder seltsamen Situation laufe ich composer dump-autoload)

+0

Ich würde auf jeden Fall Komponist dumpautoload tun, all diese seltsamen Fehler, wenn Sie einen Klassennamen geändert oder neu erstellen und es scheint, dass es keine Komm-Klassen finden kann - tun Sie einfach Komponist dumpautoload, fast immer behebt diese Art von Fehler – WoodyDRN

0

Ich finde es heraus. es ist, weil ich nicht die richtige Namenskonvention nehme.

Ich habe Pakete in meiner Route-Klasse ändern. als Groß-/Kleinschreibung