I think you are probably trying to update the text area from a thread other than the event dispatching thread, this typically causes the GUI to fail to update / hang / other bad things to happen.
What you want to do is update your display with a call to SwingUtilities.invokeLater
(link). Something like this:
SwingUtilities.invokeLater(new Runnable(){
public void run(){
myTextArea.append( "Some string" );
}
});
Rather than using System.out
and System.err
have you considered using a real logging system? System.out
isn't typically used by applications for logging messages because it's an all or nothing approach. With any half way decent logging library you can set levels and fine tune where you receive messages from. Personally I like Logback + SLF4J but the built in logging system in Java is good enough for a simple library.