void (@NotNull Path projectPath, @NotNull Project project, @NotNull AnalysisScope scope) { for (CommandLineInspectionProjectConfigurator configurator : CommandLineInspectionProjectConfigurator.EP_NAME.getIterable()) { CommandLineInspectionProjectConfigurator.ConfiguratorContext context = configuratorContext(projectPath, scope); configurator.preConfigureProject(project, context); } for (CommandLineInspectionProjectConfigurator configurator : CommandLineInspectionProjectConfigurator.EP_NAME.getIterable()) { CommandLineInspectionProjectConfigurator.ConfiguratorContext context = configuratorContext(projectPath, scope); if (configurator.isApplicable(context)) { configurator.configureProject(project, context); } } ApplicationManager.getApplication().invokeAndWait(() -> PatchProjectUtil.patchProject(project)); waitForInvokeLaterActivities(); }