diff --git a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/model/KotlinCommonCompilerArgumentsSerializer.kt b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/model/KotlinCommonCompilerArgumentsSerializer.kt index 3c8b6490436..2f15f384cfe 100644 --- a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/model/KotlinCommonCompilerArgumentsSerializer.kt +++ b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/model/KotlinCommonCompilerArgumentsSerializer.kt @@ -16,15 +16,15 @@ package org.jetbrains.kotlin.jps.model +import com.intellij.util.text.VersionComparatorUtil import com.intellij.util.xmlb.XmlSerializer import org.jdom.Element -import org.jetbrains.kotlin.cli.common.arguments.CommonCompilerArguments import org.jetbrains.jps.model.JpsProject import org.jetbrains.jps.model.serialization.JpsProjectExtensionSerializer -import org.jetbrains.kotlin.jps.JpsKotlinCompilerSettings - +import org.jetbrains.kotlin.cli.common.arguments.CommonCompilerArguments import org.jetbrains.kotlin.config.SettingConstants.KOTLIN_COMMON_COMPILER_ARGUMENTS_SECTION import org.jetbrains.kotlin.config.SettingConstants.KOTLIN_COMPILER_SETTINGS_FILE +import org.jetbrains.kotlin.jps.JpsKotlinCompilerSettings internal class KotlinCommonCompilerArgumentsSerializer : JpsProjectExtensionSerializer(KOTLIN_COMPILER_SETTINGS_FILE, KOTLIN_COMMON_COMPILER_ARGUMENTS_SECTION) { @@ -32,6 +32,9 @@ internal class KotlinCommonCompilerArgumentsSerializer : JpsProjectExtensionSeri override fun loadExtension(project: JpsProject, componentTag: Element) { val settings = XmlSerializer.deserialize(componentTag, CommonCompilerArguments.DummyImpl::class.java) ?: CommonCompilerArguments.DummyImpl() + if (VersionComparatorUtil.compare(settings.languageVersion, settings.apiVersion) < 0) { + settings.apiVersion = settings.languageVersion + } JpsKotlinCompilerSettings.setCommonCompilerArguments(project, settings) }