Ah beh, se vuoi far vedere il tempo impiegato man mano, allora sì, c'è bisogno di un timer che ogni tot di tempo (un secondo o anche meno per avere più precisione) faccia il calcolo B-A dove B appunto varia fino alla fine. E visto che si tratta di aggiornare la UI, in questo caso: javax.swing.Timer. Ma è solo un aspetto in più. Devi comunque prendere il tempo A e poi alla fine di tutto, il B.
In Java System.currentTimeMillis() ti dà il long dei millisecondi.