Deprecated on Cloud Service
Sling Scheduler jobs on AEM as a Cloud Service
A Runnable registered with scheduler.expression runs on each instance that has it, and Cloud Service runs several. Adobe's migration tooling includes a scheduler pattern that converts these to Sling Jobs.
Affected packages and APIs
org.apache.sling.commons.scheduler
What to use instead
Scheduled Sling Jobs created through JobManager.createJob(topic).schedule(), processed by a JobConsumer.
How to fix it
- List every component with scheduler.expression or scheduler.period.
- Decide whether it must run once per environment or once per instance (cache warmers may need per-instance).
- Register a scheduled job on activation and handle it in a JobConsumer.
How we detect it
- Readiness scan rule
sling-scheduler: Sling Scheduler jobs.
Can agents fix it?
Partial. Agents convert the code; humans confirm the run-once semantics.
Source: Adobe Experience League. Checked 19 October 2026.