private void resolveProjectInfo(@NotNull ExternalSystemExecutionSettings settings) {
    var id = getId();
    var project = getIdeProject();
    var projectSystemId = getExternalSystemId();
    var projectPath = getExternalProjectPath();

    var environmentConfigurationProvider = ExternalSystemExecutionAware.getEnvironmentConfigurationProvider(settings);
    var activity = externalSystemTaskStarted(project, projectSystemId, ResolveProject, environmentConfigurationProvider);
    try {
      DataNode<ProjectData> projectNode = suspendScanningAndIndexingThenRun(() -> {
        try {
          var manager = ExternalSystemFacadeManager.getInstance();
          var facade = manager.getFacade(project, projectPath, projectSystemId);
          var resolver = facade.getResolver();
          //noinspection unchecked
          return (DataNode<ProjectData>)resolver.resolveProjectInfo(id, projectPath, myIsPreviewMode, settings, myResolverPolicy);
        }
        catch (RemoteException e) {
          throw new RuntimeException(e);
        }
      });

      if (projectNode != null) {
        myExternalProject.set(projectNode);

        var externalSystemManager = ExternalSystemApiUtil.getManager(projectSystemId);
        assert externalSystemManager != null;

        var externalModulePaths = new HashSet<String>();
        var moduleNodes = ExternalSystemApiUtil.findAll(projectNode, ProjectKeys.MODULE);
        for (DataNode<ModuleData> node : moduleNodes) {
          externalModulePaths.add(node.getData().getLinkedExternalProjectPath());
        }
        var ExternalProjectPath = projectNode.getData().getLinkedExternalProjectPath();
        var externalSystemSettings = externalSystemManager.getSettingsProvider().fun(project);
        var externalProjectSettings = externalSystemSettings.getLinkedProjectSettings(ExternalProjectPath);
        if (externalProjectSettings != null && !externalModulePaths.isEmpty()) {
          externalProjectSettings.setModules(externalModulePaths);
        }
      }
    }
    finally {
      activity.finished();
    }
  }
private void resolveProjectInfo(@NotNull ExternalSystemExecutionSettings settings)