我的程序需要运行2个命令。第二个命令将根据上一个命令的结果运行。
我被建议并使用IStreamListener()获取第一个命令的结果并检查条件以运行第二个命令,但输出分成2个控制台输出
我的代码在这里
String[] cmdLine = buildCommandLine(configuration, true);
Process process = DebugPlugin.exec(cmdLine, null, null);
IProcess newProcess = DebugPlugin.newProcess(launch, process, "", null);
IStreamsProxy streamsProxy = newProcess.getStreamsProxy();
IStreamMonitor streamMonitor = streamsProxy.getOutputStreamMonitor();
isProcessSuccess = true;
streamMonitor.addListener(new IStreamListener() {
@Override
public void streamAppended(String text, IStreamMonitor monitor) {
if (text.contains("[ERROR]")) {
isProcessSuccess = false;
}
}
} );
if (isProcessSuccess) {
String[] cmdLine2 = buildCommandLine(configuration, false);
Process process2 = DebugPlugin.exec(cmdLine2, null, null);
IProcess newProcess2 = DebugPlugin.newProcess(launch, process2, "", null);
}
如何将2个命令的内容附加到1个控制台?