private static void runDebugConfiguration(@NotNull RunnerAndConfigurationSettings runSettings, ProgramRunner.Callback callback) {
    try {
      runSettings.setActivateToolWindowBeforeRun(false);
      ExecutionEnvironmentBuilder builder = ExecutionEnvironmentBuilder.create(DefaultDebugExecutor.getDebugExecutorInstance(), runSettings)
        .contentToReuse(null)
        .dataContext(null)
        .activeTarget();
      buildWithRuntimeModuleDir(runSettings, builder);
      ExecutionEnvironment environment = builder.build();
      ApplicationManager.getApplication().invokeAndWait(() -> {
        ProgramRunnerUtil.executeConfigurationAsync(environment, true, true, callback);
      });
    }
    catch (ExecutionException e) {
      ExternalSystemTaskDebugRunner.LOG.error(e);
    }
  }
private static void runDebugConfiguration(@NotNull RunnerAndConfigurationSettings runSettings, ProgramRunner.Callback callback)