public boolean validate() {
    applyLibraryOptionsForSelected();
    List<String> frameworksWithoutRequiredLibraries = new ArrayList<>();
    for (FrameworkSupportNode node : getSelectedNodes()) {
      if (node.getConfigurable().isOnlyLibraryAdded()) {
        LibraryCompositionSettings librarySettings = getLibraryCompositionSettings(node);
        if (librarySettings != null && !librarySettings.isLibraryConfigured()) {
          frameworksWithoutRequiredLibraries.add(node.getTitle());
        }
      }
    }

    if (!frameworksWithoutRequiredLibraries.isEmpty()) {
      String frameworksText = StringUtil.join(frameworksWithoutRequiredLibraries, ", ");
      Messages.showErrorDialog(myMainPanel, JavaUiBundle.message("error.message.required.library.is.not.configured", frameworksText, frameworksWithoutRequiredLibraries.size()),
                               JavaUiBundle.message("error.title.required.library.is.not.configured"));
      return false;
    }
    return true;
  }
public boolean validate()