2010-12-06 10 views

Respuesta

5

Si está utilizando la primavera puede usar:

CronTrigger trigger = new CronTrigger(cron); 
TriggerContext context = new TriggerContext() { 

public Date lastScheduledExecutionTime() { 
    return null; 
} 

public Date lastActualExecutionTime() { 
    return null; 
} 

public Date lastCompletionTime() { 
    return null; 
} 
}; 
return trigger.nextExecutionTime(context); 
5

Aquí hay una alternativa similar a CronExpression de cuarzo pero sin tener que añadir un planificador de pleno derecho a su proyecto: cron-utils

Puede obtener la fecha que necesita con lo siguiente:

//Get date for next execution 
DateTime now = DateTime.now(); 
CronDefinition cronDefinition = CronDefinitionBuilder.instanceDefinitionFor(QUARTZ); 
CronParser parser = new CronParser(cronDefinition); 
ExecutionTime executionTime = ExecutionTime.forCron(parser.parse("* * * * * * *")); 
DateTime nextExecution = executionTime.nextExecution(now)); 

De acuerdo con la descripción oficial, cron-utils es:

Una biblioteca de Java para analizar, validar, migrar crones y obtener descripciones legibles para ellos. El proyecto sigue la Convención de Versiones Semánticas y usa la licencia Apache 2.0.

Cuestiones relacionadas