Ich habe mehrere Lumen-Dienste, die den gleichen Code haben render()
Funktion innerhalb der AppExceptionsHandler.php
Klasse. Ich möchte diesen Code in ein separates Paket verschieben, das alle Dienste enthalten können. Ich konnte es schaffen, indem ich die Paket Handler.php Datei erweitere LaravelLumenExceptionsHandler.php
Klasse, im Grunde meine Klasse zwischen der Standard-Framework-Datei und der Handler, die Benutzer bearbeiten.
Veränderung:
class Handler extends LaravelLumenExceptionsHandler {...}
Zu:
Meine Klasse
use LaravelLumenExceptionsHandler;
class MyHandler extends Handler {...}
Framework-Klasse
use ServiceHelpersExceptionsMyHandler;
class Handler extends MyHandler {...}
Ich bin jedoch auf das Problem gestoßen LaravelLumenExceptionsHandler
existiert nicht, wenn meine Datei im Paket getestet wird. Ich benötige mehrere illuminate/...
Pakete in meiner Composer-Datei, aber es sieht so aus, als ob die Datei, die ich zu erweitern versuche, im Laravel- oder Lumen-Framework ist und ich müsste die laravel/lumen
Paket, das ich nicht für angemessen halte.
Ich benötige derzeit folgendes:
"illuminate/support": "^5.5",
"illuminate/http": "^5.5",
"illuminate/validation": "^5.5",
Der Fehler, den ich bekomme, ist:
[SymfonyComponentDebugExceptionFatalErrorException]
Class "LaravelLumenExceptionsHandler" not found
Antworten:
1 für die Antwort № 1Nun, technisch hängt dein Paket davon ab laravel/lumen-framework
installiert werden, da es eine Klasse aus diesem Paket erweitert. Aus diesem Grund laravel/lumen-framework
als eine Abhängigkeit für Ihr Paket ist angemessen; Ihr Paket hängt davon ab, dass es installiert wird.