Paypal Erweiterung verursacht Internal Server Error

Hallo werte Insider,

Hatten gestern Aktualisierungen durchgeführt, danach Fehlermeldung im frontend „internal Server Error 500“ - Shop is tot.

Ausgangssituation:
Shopware 6.5.7.3
Hosting bei all-inkl. mit PHP8.2 (und mariadb 10.6.12, falls relevant)
paypal 7.2.4?
→ aktualisiert nach 7.3.0
→ genannter Fehler

Fehlermeldung beim Update, kopiert aus der log-datei:

[2023-12-09T10:51:34.874072+00:00] request.CRITICAL: Uncaught PHP Exception Symfony\Component\Config\Exception\LoaderLoadException: "[Semantical Error] The annotation "@Since" in method Swag\PayPal\Administration\PayPalPaymentMethodController::setPayPalPaymentMethodAsSalesChannelDefault() was never imported. Did you maybe forget to add a "use" statement for this annotation? in /www/htdocs/w0134aff/sw6.ledclusive.de/custom/plugins/SwagPayPal/src/Administration/PayPalPaymentMethodController.php (which is being imported from "/www/htdocs/w0134aff/sw6.ledclusive.de/custom/plugins/SwagPayPal/src/Resources/config/routes.xml"). Make sure there is a loader supporting the "annotation" type." at /www/htdocs/w0134aff/sw6.ledclusive.de/vendor/symfony/config/Loader/FileLoader.php line 182 {"exception":"[object] (Symfony\\Component\\Config\\Exception\\LoaderLoadException(code: 0): [Semantical Error] 
The annotation \"@Since\" in method Swag\\PayPal\\Administration\\PayPalPaymentMethodController::setPayPalPaymentMethodAsSalesChannelDefault() was never imported. Did you maybe forget to add a \"use\" statement for this annotation? in /www/htdocs/w0134aff/sw6.ledclusive.de/custom/plugins/SwagPayPal/src/Administration/PayPalPaymentMethodController.php (which is being imported from \"/www/htdocs/w0134aff/sw6.ledclusive.de/custom/plugins/SwagPayPal/src/Resources/config/routes.xml\"). Make sure there is a loader supporting the \"annotation\" type. at /www/htdocs/w0134aff/sw6.ledclusive.de/vendor/symfony/config/Loader/FileLoader.php:182)\n[previous exception] [object] (Doctrine\\Common\\Annotations\\AnnotationException(code: 0): [Semantical Error] The annotation \"@Since\" in method Swag\\PayPal\\Administration\\PayPalPaymentMethodController::setPayPalPaymentMethodAsSalesChannelDefault() was never imported. Did you maybe forget to add a \"use\" statement for this annotation? at /www/htdocs/w0134aff/sw6.ledclusive.de/vendor/doctrine/annotations/lib/Doctrine/Common/Annotations/AnnotationException.php:36)"} []

Was ich bereits versucht habe:
swagpaypal vollständig deinstalliert, lokal hochgeladen, aktiviert → erfolglos
dito via CLI-Befehle → erfolglos

Bekomme das Plugin nicht mehr zum laufen. Aktivierung möglich, aber eben mit 500er Fehler im frontend.

Vielleicht hilft diese Info:
ich hatte ähnliches Problem mit dem store-Erweiterung. da diese nicht zwingend nötig ist, und ich die zips auch über „Erweiterung hochladen“ kann, hatte ich das einfach deaktiviert.

Möglich, dass dies zusammenhängt.

Liebe Leute, hab mich hier schon über Stunden in den Foren aufgehalten. Bin nicht der einzige mit dem Problem, aber eine generelle Lösung konnte ich nicht finden.

Bitte verzweifelt um Hilfe.
beste Grüße,
Tom

Guten Morgen,

ich habe beschriebenen Fehler nicht, es hängt aber an der Annotation @Since
über der Funktion setPayPalPaymentMethodAsSalesChannelDefault()
in der Datei Swag\PayPal\Administration\PayPalPaymentMethodController
unter custom/plugins/SwagPayPal/src/Administration/PayPalPaymentMethodController.php

Die @Since über das use-Statement use Shopware\Core\Framework\Routing\Annotation\Since Annotation wiederum in der Datei vendor/shopware/core/Framework/Routing/Annotation/Since.php

Im ersten Schritt bitte prüfen, ob die Dateien an Ort und Stelle sind.
Danach per SSH im cli die autoload-files neu generieren composer dump-autoload

Viel Erfolg,
Arnd

Hallo Arnd,
danke für deine Antwort.
ich konnte das Problem inzwischen beheben.
Hierzu hatte ich alle Reste vom paypal-plugin im Ordner Custom entfernt.
dann von Shopware die vorherige Version heruntergeladen und installiert.
Ich wage es kaum wieder auf Aktualisierung zu klicken, sondern warte lieber nochmal ein update ab.

deinen Befehl mit composer kann ich leider nicht ausführen. (testumgebung probiert)
bin in der shell und hab es mit
cmposer dump-autoload
php82 composer dump-autoload
php82 bin/console cmposer dump-autoload
versucht und bekomme die Meldung, dass er composer nicht kennt.
(zur Info: cache löschen geht bei mir immer mit: php82 bin/console cache:clear)

Es scheint, dass bei mir composer nicht installiert ist. Jedoch liegt im root eine derartige datei.
Schon etwas seltsam das ganze.
vg Tom