Trait Nachhilfe

Hallo,

ich muss zugeben, dass ich mit Traits noch keine Erfahrungen gemacht habe.

Aber nun komme ich indirekt damit in Berührung, da ich das iCal Modul gerne für 5.1 und den Store fit machen möchte.
Das Modul ist schon etwas älter und daher wollte ich in dem Rahmen auch die verwendeten Libs aktualisieren.

Bei der Lib RRULE for PHP stoße ich auf das Problem, dass die aktuelle Version nun einen Trait verwendet. Obwohl ich das komplette Paket inklusive Trait übernommen habe, kommt es zu Fehlern:


12.05.2019 19:34:19 | 00000 | MESSAGE | PHPLibrary           | Registriere Funktion... Reflection parse error: <br />
<b>Fatal error</b>:  Trait 'RRule\RRuleTrait' not found in <b>C:\IP-Symcon\modules\iCal-Calendar\libs\php-rrule-master\src\RRule.php</b> on line <b>94</b><br />
Abort Processing during Fatal-Error: Trait 'RRule\RRuleTrait' not found
   Error in Script C:\IP-Symcon\modules\iCal-Calendar\libs\php-rrule-master\src\RRule.php on Line 94
...
12.05.2019 19:35:15 | 41483 | ERROR   | InstanceManager      | Kann Schnittstellen-Instanz nicht erstellen: <br />
<b>Fatal error</b>:  Trait 'RRule\RRuleTrait' not found in <b>C:\IP-Symcon\modules\iCal-Calendar\libs\php-rrule-master\src\RRule.php</b> on line <b>94</b><br />
Abort Processing during Fatal-Error: Trait 'RRule\RRuleTrait' not found
   Error in Script C:\IP-Symcon\modules\iCal-Calendar\libs\php-rrule-master\src\RRule.php on Line 94

Auf Zeile 94 steht

	use RRuleTrait;

Die Datei RRuleTrait.php mit

trait RRuleTrait
{...

liegt ebenfalls in C:\IP-Symcon\modules\iCal-Calendar\libs\php-rrule-master\src\

Ich bin echt ratlos, da ich noch nicht verstanden habe, wie PHP Traits sucht und findet (oder auch nicht):confused:

Kann mir da jemand weiterhelfen?

Gruß

Burkhard

Traits selber sind sehr simpel.
Hier aber wird zusätzlich noch mit Namespaces gearbeitet, das macht es dann etwas komplizierter.
Wenn solche libs dann auch noch einen Autoloader haben um Dateien nachzuladen und vielleicht auch verschiedene Namespaces nutzen, verliert man schnell den Überblick.

Ich würde zuerst versuchen rauszukommen ob überhaupt die benötigten Dateien geladen werden.
Michael
Edit: wie es aussieht erwartet die Lib das alle Dateien automatisch geladen werden.
IPS macht das nicht, also musst du wohl selber alle includen.

Besten Dank!

Es lag am fehlenden Include.