private static void runToolBus(final ToolBus toolbus) {
    try {
      toolbus.parsecup();
      toolbus.prepare();
      Thread thread =
          new Thread(
              new Runnable() {
                public void run() {
                  toolbus.execute();
                }
              });
      thread.setName(PLUGIN_ID);
      thread.start();

      DebugConsole debugConsole = new DebugConsole(toolbus);
      debugConsole.show();
    } catch (Exception rex) {
      rex.printStackTrace();
      throw new RuntimeException(rex);
    }
  }
    private SingletonToolBus() {
      super();
      try {
        String mainScript = getMainScript();
        if (mainScript != null) {
          List<String> includePath = getIncludesPath();
          String[] toolBusCommand = buildToolBusCommand(mainScript, includePath);

          toolbus = new ToolBus(toolBusCommand);
          toolbus.setToolExecutorFactory(new EclipseToolExecutorFactory(getBinaryPaths()));
        } else {
          throw new RuntimeException(
              "There was no proper toolbus extension found, so the ToolBus will not function");
        }
      } catch (Exception ex) {
        ex.printStackTrace();
        throw new RuntimeException(ex);
      }
    }