JLabel requires no repaint call. Simply calling setText(...) will change the label's text, and that is all that is required.
I wonder if your problem is a concurrency issue, that you are doing a long-running process on the Swing event thread and that this is preventing your label from updating its text.
If so, then consider doing your long-running process in a background thread such as that provided by a SwingWorker, and then updating your JLabel's text on the Swing thread, such as can be done via the SwingWorker's publish/process methods.
For more on this, please have a look at the Lesson: Concurrency in Swing tutorial.
Also Mario De... is correct about not being able to print simple new-lines on a JLabel. 1+ to his answer.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…