diff --git a/platform/build-scripts/src/org/jetbrains/intellij/build/impl/PlatformModules.kt b/platform/build-scripts/src/org/jetbrains/intellij/build/impl/PlatformModules.kt index 7af15ff512ce..c43fad433abb 100644 --- a/platform/build-scripts/src/org/jetbrains/intellij/build/impl/PlatformModules.kt +++ b/platform/build-scripts/src/org/jetbrains/intellij/build/impl/PlatformModules.kt @@ -87,6 +87,8 @@ private val PLATFORM_IMPLEMENTATION_MODULES = java.util.List.of( "intellij.platform.markdown.utils", "intellij.platform.util.commonsLangV2Shim", + "intellij.platform.externalSystem.impl", + // do we need it? "intellij.platform.sqlite", //"fleet.rpc.server", diff --git a/platform/platform-impl/intellij.platform.ide.impl.iml b/platform/platform-impl/intellij.platform.ide.impl.iml index 54c3b91ea58d..3be00deb4da5 100644 --- a/platform/platform-impl/intellij.platform.ide.impl.iml +++ b/platform/platform-impl/intellij.platform.ide.impl.iml @@ -69,7 +69,6 @@ - diff --git a/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/IdeSerializationContext.kt b/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/IdeSerializationContext.kt index e52137400c13..b626a9c9a8ba 100644 --- a/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/IdeSerializationContext.kt +++ b/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/IdeSerializationContext.kt @@ -36,8 +36,8 @@ internal class IdeSerializationContext( override val virtualFileUrlManager: VirtualFileUrlManager, override val fileContentReader: JpsFileContentReader, override val fileInDirectorySourceNames: FileInDirectorySourceNames, - private val externalStorageConfigurationManager: ExternalStorageConfigurationManager + private val externalStorageConfigurationManager: ExternalStorageConfigurationManager? ) : BaseIdeSerializationContext() { override val isExternalStorageEnabled: Boolean - get() = externalStorageConfigurationManager.isEnabled + get() = externalStorageConfigurationManager?.isEnabled == true } \ No newline at end of file diff --git a/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectModelSynchronizer.kt b/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectModelSynchronizer.kt index c9b058822e45..cbd55b9ea0bf 100644 --- a/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectModelSynchronizer.kt +++ b/platform/platform-impl/src/com/intellij/workspaceModel/ide/impl/jps/serialization/JpsProjectModelSynchronizer.kt @@ -12,6 +12,7 @@ import com.intellij.openapi.application.writeAction import com.intellij.openapi.components.Service import com.intellij.openapi.components.service import com.intellij.openapi.components.serviceIfCreated +import com.intellij.openapi.components.serviceOrNull import com.intellij.openapi.diagnostic.debug import com.intellij.openapi.diagnostic.logger import com.intellij.openapi.module.ProjectLoadingErrorsNotifier @@ -38,7 +39,10 @@ import com.intellij.platform.workspace.jps.* import com.intellij.platform.workspace.jps.entities.ModuleEntity import com.intellij.platform.workspace.jps.serialization.impl.* import com.intellij.platform.workspace.jps.serialization.impl.JpsProjectEntitiesLoader.createProjectSerializers -import com.intellij.platform.workspace.storage.* +import com.intellij.platform.workspace.storage.DummyParentEntitySource +import com.intellij.platform.workspace.storage.EntitySource +import com.intellij.platform.workspace.storage.MutableEntityStorage +import com.intellij.platform.workspace.storage.VersionedStorageChange import com.intellij.platform.workspace.storage.impl.VersionedStorageChangeInternal import com.intellij.platform.workspace.storage.instrumentation.EntityStorageInstrumentationApi import com.intellij.platform.workspace.storage.instrumentation.MutableEntityStorageInstrumentation @@ -424,10 +428,14 @@ class JpsProjectModelSynchronizer(private val project: Project) : Disposable { val configLocation: JpsProjectConfigLocation = getJpsProjectConfigLocation(project)!! fileContentReader = (project.stateStore as ProjectStoreWithJpsContentReader).createContentReader() val externalStoragePath = project.getExternalConfigurationDir() - val externalStorageConfigurationManager = ExternalStorageConfigurationManager.getInstance(project) + val externalStorageConfigurationManager = project.serviceOrNull() val fileInDirectorySourceNames = FileInDirectorySourceNames.from(WorkspaceModel.getInstance(project).currentSnapshot) - val context = IdeSerializationContext(virtualFileManager, fileContentReader, fileInDirectorySourceNames, - externalStorageConfigurationManager) + val context = IdeSerializationContext( + virtualFileUrlManager = virtualFileManager, + fileContentReader = fileContentReader, + fileInDirectorySourceNames = fileInDirectorySourceNames, + externalStorageConfigurationManager = externalStorageConfigurationManager, + ) return createProjectSerializers(configLocation, externalStoragePath, context) }