1
我需要根据执行第一次启动配置的输出启动另一个启动配置。所以有一种方法可以从这次启动获取控制台输出?如何在eclipse中运行配置后获得控制台输出(在代码中)?
事情是这样的:
Launch launch = (Launch) configurations[0].launch(ILaunchManager.RUN_MODE, console);
if(launch.output){
configurations[1].launch(ILaunchManager.RUN_MODE, console);
}
例如第一个启动配置是一个maven的项目,我需要检查,如果建造成功地为它还是失败。
我有下面的代码:
Launch launch = (Launch) configurations[0].launch(ILaunchManager.RUN_MODE,
new NullProgressMonitor());
final IProcess[] processes = launch.getProcesses();
IDebugEventSetListener listener = new IDebugEventSetListener() {
@Override
public void handleDebugEvents(DebugEvent[] events) {
for(DebugEvent e : events){
for(int i = 0; i < processes.length; i++){
if(e.getKind() == DebugEvent.TERMINATE && e.getSource() == processes[i]){
try {
--------To check here if console contains Build Failed--------
configurations[1].launch(ILaunchManager.RUN_MODE,
new NullProgressMonitor());
} catch (CoreException e1) {
e1.printStackTrace();
}
}
}
}
}
};
DebugPlugin.getDefault().addDebugEventListener(listener);
以及我应该如何将它与代码中的启动过程连接起来? –
这些扩展点始终处于活动状态。您必须将有关启动的信息保存在可以访问的地方,以检查是否需要执行任何操作。 –
我明白这一点,但在代码中,如何获取控制台输出以与某些字符串进行比较? –