diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/Kotlin2JsGradlePluginIT.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/Kotlin2JsGradlePluginIT.kt index c3ae654f61e..6dd5eab996a 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/Kotlin2JsGradlePluginIT.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/Kotlin2JsGradlePluginIT.kt @@ -81,13 +81,13 @@ class Kotlin2JsIrGradlePluginIT : AbstractKotlin2JsGradlePluginIT(true) { val appProject = transformProjectWithPluginsDsl( projectName = "app", directoryPrefix = rootProjectName, - wrapperVersion = GradleVersionRequired.AtLeast("5.3") + wrapperVersion = GradleVersionRequired.AtLeast("5.5") ) val libProject = transformProjectWithPluginsDsl( projectName = "lib", directoryPrefix = rootProjectName, - wrapperVersion = GradleVersionRequired.AtLeast("5.3") + wrapperVersion = GradleVersionRequired.AtLeast("5.5") ) libProject.gradleProperties().appendText(jsCompilerType(KotlinJsCompilerType.IR)) diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/js-composite-build/app/build.gradle.kts b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/js-composite-build/app/build.gradle.kts index 266c534a9d6..d5fbfa59b1e 100755 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/js-composite-build/app/build.gradle.kts +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/resources/testProject/js-composite-build/app/build.gradle.kts @@ -8,10 +8,17 @@ repositories { mavenCentral() } -kotlin.js { - binaries.executable() - nodejs() - browser() +kotlin { + js { + nodejs() + binaries.executable() + } +} +kotlin { + js { + browser() + binaries.executable() + } } tasks.named("browserTest") { diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrSubTarget.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrSubTarget.kt index b886945973f..d6d642a68b5 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrSubTarget.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/ir/KotlinJsIrSubTarget.kt @@ -57,9 +57,12 @@ abstract class KotlinJsIrSubTarget( } } - internal val produceExecutable: () -> Unit by lazy { + private val produceExecutable: Unit by lazy { configureMain() - return@lazy { Unit } + } + + internal fun produceExecutable() { + produceExecutable } override fun testTask(body: KotlinJsTest.() -> Unit) { diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/subtargets/KotlinJsSubTarget.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/subtargets/KotlinJsSubTarget.kt index 42de9e0e11a..4bf8c4fdcfb 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/subtargets/KotlinJsSubTarget.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/subtargets/KotlinJsSubTarget.kt @@ -42,10 +42,14 @@ abstract class KotlinJsSubTarget( protected val taskGroupName = "Kotlin $disambiguationClassifier" - internal open fun produceExecutable() { + private val produceExecutable: Unit by lazy { configureMain() } + internal fun produceExecutable() { + produceExecutable + } + internal fun configure() { NpmResolverPlugin.apply(project)