2
我在eclipse中開發了一個插件,這個插件應該調用ant任務sshexec
。問題是如何在eclipse控制檯中打印遠程消息?ant任務「sshexec」,如何在控制檯中打印遠程消息?
我的代碼如下所示:
Project p = new Project();
MessageConsole console = new MessageConsole("building", null);
IConsoleManager manager = (IConsoleManager) ConsolePlugin.getDefault().getConsoleManager();
manager.addConsoles(new IConsole[] { console });
manager.showConsoleView(console);
MessageConsoleStream cs = console.newMessageStream();
cs.setColor(Display.getDefault().getSystemColor(SWT.COLOR_BLUE));
PrintStream ps = new PrintStream(cs);
final DefaultLogger consoleLogger = new DefaultLogger();
consoleLogger.setErrorPrintStream(ps);
consoleLogger.setOutputPrintStream(ps);
consoleLogger.setMessageOutputLevel(Project.MSG_INFO);
p.init();
p.addBuildListener(consoleLogger);
ProjectHelper helper = ProjectHelper.getProjectHelper();
helper.parse(p, buildFile);
p.executeTarget(p.getDefaultTarget());
當執行sshexec目標進行編譯,我總是得到輸出消息像
[sshexec] cd ...; ls ...; ....
它只打印我寫的命令,但遠程機器的編譯信息無法在控制檯中打印。一旦編譯過程出現錯誤,它仍然會成功返回構建。
如何在控制檯中打印遠程消息並獲取錯誤結果?