// erst mal Konsolen-Plugin holen
// versuchen eine bestehende Konsole zu finden, oder neu anzulegen
// systemConsoleName ist die Variable
ConsolePlugin plugin = ConsolePlugin.getDefault();
IConsoleManager conMan = plugin.getConsoleManager();
IConsole[] existing = conMan.getConsoles();
for (int i = 0; i < existing.length; i++)
if (systemConsoleName.equals(existing[i].getName()))
return (MessageConsole) existing[i];
// no console found, so create a new one
MessageConsole systemConsole = new MessageConsole(systemConsoleName,
null);
conMan.addConsoles(new IConsole[] { systemConsole });
// dann erstellst du die MessageStreams, die du an PrintStreams anbindest
defaultMessageOutputStream = systemConsole.newMessageStream();
defaultMessagePrintStream = new PrintStream(defaultMessageOutputStream);
warningMessageOutputStream = systemConsole.newMessageStream();
warningMessageOutputStream.setColor(new Color(Display.getCurrent(), 0,
0, 255));
warningMessagePrintStream = new PrintStream(warningMessageOutputStream);
errorMessageOutputStream = systemConsole.newMessageStream();
errorMessageOutputStream.setColor(new Color(Display.getCurrent(), 255,
0, 0));
errorMessagePrintStream = new PrintStream(errorMessageOutputStream);
//um dann schließlich die printStreams an sysout und syserr zu hängen
System.setOut(defaultMessagePrintStream);
System.setErr(errorMessagePrintStream);
//lässt du dir dann noch die Konsole anzeigen
// z.B. mit
try {
IWorkbenchPage page = PlatformUI.getWorkbench()
.getActiveWorkbenchWindow().getActivePage();
String id = IConsoleConstants.ID_CONSOLE_VIEW;
IConsoleView view = (IConsoleView) page.showView(id);
view.display(systemConsole);
} catch (PartInitException e) {
System.err.println(e.getMessage());
// e.printStackTrace();
}
//dann werden alle System.out.print* und auch err auf dieser Konsole angezeigt