void (@NotNull IdeaPluginDescriptor pluginDescriptor, boolean isUpdate) { Set<ProjectSystemId> existingEPs = ExternalSystemManager.EP_NAME.getExtensionList().stream() .map(ExternalSystemManager::getSystemId) .collect(Collectors.toSet()); Iterator<Map.Entry<Pair<ProjectSystemId, File>, InternalExternalProjectInfo>> iter = myExternalRootProjects.entrySet().iterator(); while (iter.hasNext()) { Map.Entry<Pair<ProjectSystemId, File>, InternalExternalProjectInfo> entry = iter.next(); if (!existingEPs.contains(entry.getKey().first)) { iter.remove(); markDirty(entry.getValue().getExternalProjectPath()); } } }