private static List<MavenProjectProblem> collectProblems(VirtualFile file, State state, Predicate<File> fileExistsPredicate) {
    List<MavenProjectProblem> result = new ArrayList<>();

    validateParent(file, state, result);
    result.addAll(state.myReadingProblems);

    for (Map.Entry<String, String> each : state.myModulesPathsAndNames.entrySet()) {
      if (LocalFileSystem.getInstance().findFileByPath(each.getKey()) == null) {
        result.add(createDependencyProblem(file, MavenProjectBundle.message("maven.project.problem.moduleNotFound", each.getValue())));
      }
    }

    validateDependencies(file, state, result, fileExistsPredicate);
    validateExtensions(file, state, result);
    validatePlugins(file, state, result);

    return result;
  }
private static List<MavenProjectProblem> collectProblems(VirtualFile file, State state, Predicate<File> fileExistsPredicate)