diff --git a/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt b/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt index 678b3eb075b..6d9185c54dc 100644 --- a/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt +++ b/jps/jps-common/src/org/jetbrains/kotlin/config/KotlinFacetSettings.kt @@ -239,6 +239,7 @@ class KotlinFacetSettings { var isTestModule: Boolean = false var externalProjectId: String = "" + var isHmppEnabled: Boolean = false } interface KotlinFacetSettingsProvider { diff --git a/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt b/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt index d451d84c5ba..91dca316390 100644 --- a/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt +++ b/jps/jps-common/src/org/jetbrains/kotlin/config/facetSerialization.kt @@ -160,6 +160,7 @@ private fun readV2AndLaterConfig(element: Element): KotlinFacetSettings { } ?: KotlinModuleKind.DEFAULT isTestModule = element.getAttributeValue("isTestModule")?.toBoolean() ?: false externalProjectId = element.getAttributeValue("externalProjectId") ?: "" + isHmppEnabled = element.getAttribute("isHmppProject")?.booleanValue ?: false element.getChild("compilerSettings")?.let { compilerSettings = CompilerSettings() XmlSerializer.deserializeInto(compilerSettings!!, it) @@ -326,6 +327,9 @@ private fun KotlinFacetSettings.writeLatestConfig(element: Element) { if (externalProjectId.isNotEmpty()) { element.setAttribute("externalProjectId", externalProjectId) } + if (isHmppEnabled) { + element.setAttribute("isHmppProject", isHmppEnabled.toString()) + } productionOutputPath?.let { if (it != (compilerArguments as? K2JSCompilerArguments)?.outputFile) { element.addContent(Element("productionOutputPath").apply { addContent(PathUtil.toSystemIndependentName(it)) })