如何以编程方式访问Eclipse stacktrace控制台的内容



我想知道如何访问Eclipse IDE的堆栈跟踪控制台?我试图将IConsole对象转换为MessageConsole以获取内容,但它显示了cast异常。如有任何帮助,我将不胜感激。

ConsolePlugin plugin = ConsolePlugin.getDefault();
IConsoleManager conMan = plugin.getConsoleManager();
IConsole[] existing = conMan.getConsoles();
for (int i = 0; i < existing.length; i++) {
    try {
        MessageConsole myconsole=(MessageConsole)existing[i];
        System.out.println(myconsole.getDocument().get());
    } catch(Exception exc) {
        exc.printStackTrace();
    }
}

MessageConsole只是IConsole接口的许多可能实现之一。尝试转换为TextConsole (org.eclipse.ui.console.TextConsole)。TextConsole是许多常见控制台类的超类(但可能还有一些控制台实现,它们有另一个基类):

TextConsole myconsole = (TextConsole) existing[i];

相关内容

最新更新