void (@NotNull ExternalDependenciesState state) { List<ProjectExternalDependency> oldDependencies = new ArrayList<>(myDependencies); myDependencies.clear(); for (DependencyOnPluginState dependency : state.myDependencies) { myDependencies.add(new DependencyOnPlugin(dependency.myId, dependency.myMinVersion, dependency.myMaxVersion)); } if (!oldDependencies.equals(myDependencies) && !myDependencies.isEmpty() && !ApplicationManager.getApplication().isUnitTestMode()) { // may be executed immediately if start-up activities are already passed, but must be not performed in loadState NonUrgentExecutor.getInstance().execute(() -> { try { StartupManager.getInstance(myProject).runAfterOpened(() -> CheckRequiredPluginsActivity.runCheck(myProject, this)); } catch (AlreadyDisposedException ignored) { } }); } }