Unsere Organisation verwendet den Enterprise Scheduler Skybot, um Stapeljobs auszuführen. Wir haben kürzlich unsere erste Spring-Batch-App bereitgestellt und unsere Jobs so geplant, dass sie unter der Nummer CommandLineJobRunner
als Hauptklasse ausgeführt werden (Hauptklasse ist im Manifest unseres Krams definiert). Der Befehl sieht wie folgt aus:Spring Batch CommandLineJobRunner hängt bei Ausführung durch den Enterprise Scheduler
java -Dspring.profiles.active=production -jar AppName.jar jobs/jobName.xml jobId
Wenn manuell auf der Kommandozeile ausgeführt werden, die Arbeitsplätze perfekt laufen. Wenn derselbe Befehl vom Scheduler ausgeführt wird, hängt der Job sofort ohne Ausgabe in den skybot-Protokollen und keine Arbeit durch den Job. Wir haben mögliche Berechtigungsprobleme untersucht, aber keine existieren. Die Spring Batch-Dokumentation besagt, dass CommandLineJobRunner
für den Zweck der Ausführung von geplanten Jobs aus der Shell verfügbar ist, aber alle unsere Jobs hängen sofort bei der Ausführung. Wie können wir das lösen?
Sie könnten auch Spring Boot verwenden, die den 'CommandLineJobRunner' nicht verwendet ... –
@MichaelMinella, danke - ich muss mich darum kümmern. – Tap