From fa847d758d9db5aab390a0d1f05f8a8015b6f23b Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Fri, 28 Aug 2020 19:19:44 +0300 Subject: [PATCH] Wizard: use compileKotlin for groovy instead of direct KotlinCompile task access #KT-38921 fixed --- .../jvmToJvmDependency/expected/a/build.gradle | 4 +--- .../jvmToJvmDependency/expected/b/build.gradle | 4 +--- .../jvmToJvmDependency/expected/c/build.gradle | 4 +--- .../jvmToJvmDependency/expected/d/build.gradle | 4 +--- .../expected/b/build.gradle | 4 +--- .../expected/b/c/build.gradle | 4 +--- .../expected/build.gradle | 4 +--- .../buildFileGeneration/kotlinJvm/build.gradle | 4 +--- .../backendApplication/build.gradle | 4 +--- .../consoleApplication/build.gradle | 4 +--- .../moduleConfigurators/configurators.kt | 18 ++++++++++++++---- 11 files changed, 24 insertions(+), 34 deletions(-) diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/a/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/a/build.gradle index 223a6063cd5..dd2bc288b05 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/a/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/a/build.gradle @@ -1,5 +1,3 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { id 'org.jetbrains.kotlin.jvm' version 'KOTLIN_VERSION' } @@ -17,6 +15,6 @@ dependencies { implementation project(':c') testImplementation 'org.jetbrains.kotlin:kotlin-test-junit' } -tasks.withType(KotlinCompile) { +compileKotlin { kotlinOptions.jvmTarget = '1.8' } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/b/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/b/build.gradle index a654cc13b6b..f83b3e99a8f 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/b/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/b/build.gradle @@ -1,5 +1,3 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { id 'org.jetbrains.kotlin.jvm' version 'KOTLIN_VERSION' } @@ -17,6 +15,6 @@ dependencies { implementation project(':d') testImplementation 'org.jetbrains.kotlin:kotlin-test-junit' } -tasks.withType(KotlinCompile) { +compileKotlin { kotlinOptions.jvmTarget = '1.8' } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/c/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/c/build.gradle index 81fb41a2719..661eeff5a77 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/c/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/c/build.gradle @@ -1,5 +1,3 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { id 'org.jetbrains.kotlin.jvm' version 'KOTLIN_VERSION' } @@ -15,6 +13,6 @@ repositories { dependencies { testImplementation 'org.jetbrains.kotlin:kotlin-test-junit' } -tasks.withType(KotlinCompile) { +compileKotlin { kotlinOptions.jvmTarget = '1.8' } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/d/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/d/build.gradle index 6246d7f1253..abacae054f7 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/d/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependency/expected/d/build.gradle @@ -1,5 +1,3 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { id 'org.jetbrains.kotlin.jvm' version 'KOTLIN_VERSION' } @@ -16,6 +14,6 @@ dependencies { implementation project(':a') testImplementation 'org.jetbrains.kotlin:kotlin-test-junit' } -tasks.withType(KotlinCompile) { +compileKotlin { kotlinOptions.jvmTarget = '1.8' } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/b/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/b/build.gradle index 61186118f72..d6768c9b3e5 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/b/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/b/build.gradle @@ -1,5 +1,3 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { id 'org.jetbrains.kotlin.jvm' } @@ -16,6 +14,6 @@ dependencies { rootProject testImplementation 'org.jetbrains.kotlin:kotlin-test-junit' } -tasks.withType(KotlinCompile) { +compileKotlin { kotlinOptions.jvmTarget = '1.8' } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/b/c/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/b/c/build.gradle index fc01c93e25a..51da42571ce 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/b/c/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/b/c/build.gradle @@ -1,5 +1,3 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { id 'org.jetbrains.kotlin.jvm' } @@ -16,6 +14,6 @@ dependencies { implementation project(':b') testImplementation 'org.jetbrains.kotlin:kotlin-test-junit' } -tasks.withType(KotlinCompile) { +compileKotlin { kotlinOptions.jvmTarget = '1.8' } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/build.gradle index 81fb41a2719..661eeff5a77 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmToJvmDependencyWithSingleRoot/expected/build.gradle @@ -1,5 +1,3 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { id 'org.jetbrains.kotlin.jvm' version 'KOTLIN_VERSION' } @@ -15,6 +13,6 @@ repositories { dependencies { testImplementation 'org.jetbrains.kotlin:kotlin-test-junit' } -tasks.withType(KotlinCompile) { +compileKotlin { kotlinOptions.jvmTarget = '1.8' } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle index 3f1eb089cb8..37b3fdde778 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle @@ -1,5 +1,3 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { id 'org.jetbrains.kotlin.jvm' version 'KOTLIN_VERSION' } @@ -15,6 +13,6 @@ repositories { dependencies { testImplementation 'org.jetbrains.kotlin:kotlin-test-junit' } -tasks.withType(KotlinCompile) { +compileKotlin { kotlinOptions.jvmTarget = '1.6' } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/projectTemplatesBuildFileGeneration/backendApplication/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/projectTemplatesBuildFileGeneration/backendApplication/build.gradle index 28145d9fe3d..b5ab1b84a43 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/projectTemplatesBuildFileGeneration/backendApplication/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/projectTemplatesBuildFileGeneration/backendApplication/build.gradle @@ -1,5 +1,3 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { id 'org.jetbrains.kotlin.jvm' version 'KOTLIN_VERSION' } @@ -15,6 +13,6 @@ repositories { dependencies { testImplementation 'org.jetbrains.kotlin:kotlin-test-junit' } -tasks.withType(KotlinCompile) { +compileKotlin { kotlinOptions.jvmTarget = '1.8' } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/projectTemplatesBuildFileGeneration/consoleApplication/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/projectTemplatesBuildFileGeneration/consoleApplication/build.gradle index 87fcaff55ff..5c95cf49d1b 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/projectTemplatesBuildFileGeneration/consoleApplication/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/projectTemplatesBuildFileGeneration/consoleApplication/build.gradle @@ -1,5 +1,3 @@ -import org.jetbrains.kotlin.gradle.tasks.KotlinCompile - plugins { id 'org.jetbrains.kotlin.jvm' version 'KOTLIN_VERSION' id 'application' @@ -16,7 +14,7 @@ repositories { dependencies { testImplementation 'org.jetbrains.kotlin:kotlin-test-junit' } -tasks.withType(KotlinCompile) { +compileKotlin { kotlinOptions.jvmTarget = '1.8' } application { diff --git a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/configurators.kt b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/configurators.kt index 290522af003..2edc7ff975a 100644 --- a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/configurators.kt +++ b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/configurators.kt @@ -90,15 +90,17 @@ object JvmSinglePlatformModuleConfigurator : JvmModuleConfigurator, module: Module ): List = buildList { - +GradleImportIR("org.jetbrains.kotlin.gradle.tasks.KotlinCompile") + if (configurationData.buildSystemType == BuildSystemType.GradleKotlinDsl) { + +GradleImportIR("org.jetbrains.kotlin.gradle.tasks.KotlinCompile") + } val targetVersionValue = inContextOfModuleConfigurator(module) { reader { JvmModuleConfigurator.targetJvmVersion.reference.settingValue.value } } - when { - configurationData.buildSystemType.isGradle -> { + when (configurationData.buildSystemType) { + BuildSystemType.GradleKotlinDsl -> { +GradleConfigureTaskIR( GradleByClassTasksAccessIR("KotlinCompile"), irs = listOf( @@ -106,7 +108,15 @@ object JvmSinglePlatformModuleConfigurator : JvmModuleConfigurator, ) ) } - configurationData.buildSystemType == BuildSystemType.Maven -> { + BuildSystemType.GradleGroovyDsl -> { + +GradleSectionIR( + "compileKotlin", + irs = listOf( + GradleAssignmentIR("kotlinOptions.jvmTarget", GradleStringConstIR(targetVersionValue)) + ) + ) + } + BuildSystemType.Maven -> { +MavenPropertyIR("kotlin.compiler.jvmTarget", targetVersionValue) } }