Return old-style DSL for Gradle versions < 5.0
This commit is contained in:
+23
-10
@@ -24,6 +24,7 @@ import com.intellij.openapi.externalSystem.model.project.ProjectId
|
|||||||
import com.intellij.openapi.module.Module
|
import com.intellij.openapi.module.Module
|
||||||
import com.intellij.openapi.roots.ModifiableModelsProvider
|
import com.intellij.openapi.roots.ModifiableModelsProvider
|
||||||
import com.intellij.openapi.roots.ModifiableRootModel
|
import com.intellij.openapi.roots.ModifiableRootModel
|
||||||
|
import org.gradle.util.GradleVersion
|
||||||
import org.jetbrains.kotlin.idea.KotlinIcons
|
import org.jetbrains.kotlin.idea.KotlinIcons
|
||||||
import org.jetbrains.kotlin.idea.configuration.KotlinBuildScriptManipulator.Companion.GSK_KOTLIN_VERSION_PROPERTY_NAME
|
import org.jetbrains.kotlin.idea.configuration.KotlinBuildScriptManipulator.Companion.GSK_KOTLIN_VERSION_PROPERTY_NAME
|
||||||
import org.jetbrains.kotlin.idea.configuration.KotlinBuildScriptManipulator.Companion.getKotlinGradlePluginClassPathSnippet
|
import org.jetbrains.kotlin.idea.configuration.KotlinBuildScriptManipulator.Companion.getKotlinGradlePluginClassPathSnippet
|
||||||
@@ -138,21 +139,33 @@ class KotlinDslGradleKotlinJavaFrameworkSupportProvider :
|
|||||||
super.addSupport(projectId, module, rootModel, modifiableModelsProvider, buildScriptData)
|
super.addSupport(projectId, module, rootModel, modifiableModelsProvider, buildScriptData)
|
||||||
val jvmTarget = getDefaultJvmTarget(rootModel.sdk, bundledRuntimeVersion())
|
val jvmTarget = getDefaultJvmTarget(rootModel.sdk, bundledRuntimeVersion())
|
||||||
if (jvmTarget != null) {
|
if (jvmTarget != null) {
|
||||||
buildScriptData
|
addJvmTargetTask(buildScriptData)
|
||||||
.addOther(
|
|
||||||
"tasks {\n" +
|
|
||||||
" compileKotlin {\n" +
|
|
||||||
" kotlinOptions {\n" +
|
|
||||||
" jvmTarget = \"8\"\n" +
|
|
||||||
" }\n" +
|
|
||||||
" }\n" +
|
|
||||||
"}"
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
val artifactId = getStdlibArtifactId(rootModel.sdk, bundledRuntimeVersion())
|
val artifactId = getStdlibArtifactId(rootModel.sdk, bundledRuntimeVersion())
|
||||||
buildScriptData.addDependencyNotation(composeDependency(buildScriptData, artifactId))
|
buildScriptData.addDependencyNotation(composeDependency(buildScriptData, artifactId))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun addJvmTargetTask(buildScriptData: BuildScriptDataBuilder) {
|
||||||
|
val minGradleVersion = GradleVersion.version("5.0")
|
||||||
|
if (buildScriptData.gradleVersion >= minGradleVersion)
|
||||||
|
buildScriptData
|
||||||
|
.addOther("""
|
||||||
|
tasks {
|
||||||
|
compileKotlin {
|
||||||
|
kotlinOptions {
|
||||||
|
jvmTarget = "1.8"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}""".trimIndent()
|
||||||
|
)
|
||||||
|
else {
|
||||||
|
buildScriptData
|
||||||
|
.addImport("import org.jetbrains.kotlin.gradle.tasks.KotlinCompile")
|
||||||
|
.addOther("tasks.withType<KotlinCompile> {\n kotlinOptions.jvmTarget = \"1.8\"\n}\n")
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
abstract class AbstractKotlinDslGradleKotlinJSFrameworkSupportProvider(
|
abstract class AbstractKotlinDslGradleKotlinJSFrameworkSupportProvider(
|
||||||
|
|||||||
Reference in New Issue
Block a user