@Override
  public Collection<DetectedLibraryRoot> detectRoots(@NotNull VirtualFile rootCandidate, @NotNull ProgressIndicator progressIndicator) {
    List<DetectedLibraryRoot> result = new ArrayList<>();
    for (RootDetector detector : myDetectors) {
      final Collection<VirtualFile> files = detector.detectRoots(rootCandidate, progressIndicator);
      for (VirtualFile file : files) {
        result.add(new DetectedLibraryRoot(file, detector.getRootType(), detector.isJarDirectory()));
      }
    }
    return result;
  }
@Override
  public Collection<DetectedLibraryRoot> detectRoots(@NotNull VirtualFile rootCandidate, @NotNull ProgressIndicator progressIndicator)