Ergebnis 1 bis 5 von 5

Thema: [Gelöst] Cron Job registrieren

  1. #1
    Contao-Nutzer Avatar von a-v-l
    Registriert seit
    20.09.2013.
    Ort
    Freiburg im Breisgau
    Beiträge
    88

    Standard [Gelöst] Cron Job registrieren

    Hallo zusammen!

    Endlich komme ich dazu eine meiner Erweiterungen von 3.5 auf 4.13 zu migrieren :-)
    Eines meiner wenigen Probleme dabei ist, dass der nun per Service Annotation registrierte Cron nicht erkannt/registriert wird.

    Die Datei vendor/a-v-l/mybundle/src/Cron/CronTest.php sieht so aus:

    PHP-Code:
    namespace App\Cron;

    use 
    Contao\CoreBundle\ServiceAnnotation\CronJob;
    use 
    Psr\Log\LogLevel;
    use 
    Contao\CoreBundle\Monolog\ContaoContext;

    /**
     * @CronJob("minutely")
     */
    class CronTest
    {
        public function 
    __invoke(): void
        
    {
            
    dump("Hallo CronTest!");
            \
    System::getContainer()
                ->
    get('monolog.logger.contao')
                ->
    log(
                    
    LogLevel::INFO,
                    
    'Hallo CronTest!',
                    array(
                        
    'contao' => new ContaoContext(__CLASS__ '::' __FUNCTION__TL_CRON)
                    )
                );
        }

    Leider wird da nichts gedumpt oder geloggt. Auch in dump($GLOBALS['TL_CRON']) taucht der Cron Job nicht auf.
    Habe ich was vergessen? Muss ich außer der Service Annotation auch noch Service Tagging verwenden – ich dachte, das wäre doppelt gemoppelt…

    Danke für alle Hinweise!
    Geändert von a-v-l (04.05.2022 um 16:42 Uhr)

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.104
    Partner-ID
    10107

    Standard

    Der Dateipfad und dein Namespace passen nicht ganz zusammen. Versuchst du eine Extension oder eine Applikationsanpassung zu programmieren?
    » sponsor me via GitHub or PayPal or Revolut

  3. #3
    Contao-Nutzer Avatar von a-v-l
    Registriert seit
    20.09.2013.
    Ort
    Freiburg im Breisgau
    Beiträge
    88

    Standard

    Unter 3.5 lief der Code noch als Erweiterung. Zwar benötige ich die Anpassung nur für diese Installation, dachte aber, ich schreibe das wieder als Erweiterung (unveröffentlicht), um mir den Workflow anzueignen.
    Als nächsten Schritt wollte ich das Ganze auch mal als Anpassung der Installation umsetzen und schauen, ob es so funktioniert. Trotzdem sollte es ja auch als Erweiterung laufen…

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.104
    Partner-ID
    10107

    Standard

    Eine Erweiterung erfordert um einiges mehr (siehe auch die Sektion dazu in der Entwickler Dokumentation). Falls du das also wirklich als Erweiterung umsetzen möchtest, dann musst du den gesamten Code dazu posten (root composer.json, composer.json der Erweiterung, Bundle Extension, Manager Plugin, etc.)

    Ich würde dir aber empfehlen zuerst nur die Applikationsanpassung umzusetzen, falls du noch keine Erfahrungen mit Contao 4 Erweiterungen hast. Eine volle Erweiterung kannst du ja später immer noch machen.
    » sponsor me via GitHub or PayPal or Revolut

  5. #5
    Contao-Nutzer Avatar von a-v-l
    Registriert seit
    20.09.2013.
    Ort
    Freiburg im Breisgau
    Beiträge
    88

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Der Dateipfad und dein Namespace passen nicht ganz zusammen. Versuchst du eine Extension oder eine Applikationsanpassung zu programmieren?
    Ich bin nun dabei geblieben, das Ganze als Erweiterung zu schreiben. Der Tipp mit dem Namespace hat mir dann weitergeholfen:
    Es muss natürlich namespace AVL\mybundle\Cron; anstatt namespace App\Cron; heißen!

    Danke!

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •