@Override
  public void checkConfiguration() throws RuntimeConfigurationException {
    if (myExecuteScriptFile) {
      if (!FileUtil.exists(myScriptPath)) {
        throw new RuntimeConfigurationError(message("sh.run.script.not.found"));
      }
      if (StringUtil.isNotEmpty(myInterpreterPath) || !new File(myScriptPath).canExecute()) {
        // WSL can be used as an interpreter
        if (myInterpreterPath.endsWith("sh") && getWSLDistributionIfNeeded(myInterpreterPath, myScriptPath) != null) return;
        if (!FileUtil.exists(myInterpreterPath)) {
          throw new RuntimeConfigurationError(message("sh.run.interpreter.not.found"));
        }
        if (!new File(myInterpreterPath).canExecute()) {
          throw new RuntimeConfigurationError(message("sh.run.interpreter.should.be.executable"));
        }
      }
    }
    if (!FileUtil.exists(myScriptWorkingDirectory)) {
      throw new RuntimeConfigurationError(message("sh.run.working.dir.not.found"));
    }
  }
@Override
  public void checkConfiguration()