diff --git a/platform/lang-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/module/ModuleManagerComponentBridge.kt b/platform/lang-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/module/ModuleManagerComponentBridge.kt index 7bcdabd1cff4..3170d928c388 100644 --- a/platform/lang-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/module/ModuleManagerComponentBridge.kt +++ b/platform/lang-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/module/ModuleManagerComponentBridge.kt @@ -22,6 +22,7 @@ import com.intellij.openapi.project.ProjectManager import com.intellij.openapi.project.ProjectManagerListener import com.intellij.openapi.project.impl.ProjectServiceContainerInitializedListener import com.intellij.openapi.roots.ModuleRootManager +import com.intellij.openapi.roots.ProjectRootManager import com.intellij.openapi.roots.ex.ProjectRootManagerEx import com.intellij.openapi.roots.libraries.LibraryTablesRegistrar import com.intellij.openapi.util.Disposer @@ -38,6 +39,7 @@ import com.intellij.workspaceModel.ide.impl.legacyBridge.library.LibraryBridgeIm import com.intellij.workspaceModel.ide.impl.legacyBridge.library.ProjectLibraryTableBridgeImpl import com.intellij.workspaceModel.ide.impl.legacyBridge.library.ProjectLibraryTableBridgeImpl.Companion.libraryMap import com.intellij.workspaceModel.ide.impl.legacyBridge.module.roots.ModuleRootComponentBridge +import com.intellij.workspaceModel.ide.impl.legacyBridge.project.ProjectRootManagerBridge import com.intellij.workspaceModel.ide.impl.legacyBridge.project.ProjectRootsChangeListener import com.intellij.workspaceModel.ide.legacyBridge.ModuleBridge import com.intellij.workspaceModel.storage.* @@ -342,11 +344,14 @@ class ModuleManagerComponentBridge(private val project: Project) : ModuleManager } val results = service.invokeAll(tasks) + val projectRootManager = ProjectRootManager.getInstance(project) as ProjectRootManagerBridge + WorkspaceModel.getInstance(project).updateProjectModelSilent { builder -> val moduleMap = builder.mutableModuleMap results.mapNotNull { it.get() }.forEach { (entity, module) -> moduleMap.addMapping(entity, module) ModuleRootComponentBridge.getInstance(module).moduleLibraryTable.registerModuleLibraryInstances(builder) + projectRootManager.addTrackedLibraryAndJdkFromEntity(entity) } } } diff --git a/platform/lang-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/project/ProjectRootManagerBridge.kt b/platform/lang-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/project/ProjectRootManagerBridge.kt index f85c98685ecb..17f6d7c1487e 100644 --- a/platform/lang-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/project/ProjectRootManagerBridge.kt +++ b/platform/lang-impl/src/com/intellij/workspaceModel/ide/impl/legacyBridge/project/ProjectRootManagerBridge.kt @@ -91,7 +91,7 @@ class ProjectRootManagerBridge(project: Project) : ProjectRootManagerComponent(p jdkChangeListener.unsubscribeListeners() } - private fun addTrackedLibraryAndJdkFromEntity(moduleEntity: ModuleEntity) { + fun addTrackedLibraryAndJdkFromEntity(moduleEntity: ModuleEntity) { LOG.debug { "Add tracked global libraries and JDK from ${moduleEntity.name}" } val libraryTablesRegistrar = LibraryTablesRegistrar.getInstance() moduleEntity.dependencies.forEach {