我想知道如何访问Eclipse IDE的堆栈跟踪控制台?我试图将IConsole对象转换为MessageConsole来获取内容,但它显示了强制转换异常。任何帮助将不胜感激。
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();
}
}
答案 0 :(得分:1)
MessageConsole只是IConsole界面的许多可能实现之一。尝试强制转换为TextConsole(org.eclipse.ui.console.TextConsole)。 TextConsole是许多常见控制台类的超类(但可能还有一些控制台实现,它们有另一个基类):
TextConsole myconsole = (TextConsole) existing[i];