executar um programa Java em horário específico

Preciso de ajuda para executar meu programa Java no servidor em um horário específico, como 14:00 (para indexar os novos arquivos

Alguém me disse que Java tem algo chamado empregos, mas não sei como trabalhar com isso. Eu tentei o seguinte:

 boolean cond=true;
 while(cond){
     @SuppressWarnings("deprecation")
     int heur = new Date().getHours();
     @SuppressWarnings("deprecation")
     int minute= new Date().getMinutes();
     if(heur==16 && minute==02){
         indexer.close();
         end = new Date().getTime();
         File f;
         cond=false;
     }

Mas, com isso, o programa ainda está em execuçã

Como eu poderia executar meu programa em um horário especificad

questionAnswers(2)

yourAnswerToTheQuestion