[Gradle, JS] Add task requirements only after evaluated

This commit is contained in:
Ilya Goncharov
2020-06-15 20:46:20 +03:00
parent aaf3410708
commit 7b89717092
@@ -14,6 +14,7 @@ import org.jetbrains.kotlin.gradle.dsl.kotlinExtensionOrNull
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
import org.jetbrains.kotlin.gradle.plugin.whenEvaluated
import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget import org.jetbrains.kotlin.gradle.targets.js.KotlinJsTarget
import org.jetbrains.kotlin.gradle.targets.js.npm.RequiresNpmDependencies import org.jetbrains.kotlin.gradle.targets.js.npm.RequiresNpmDependencies
import org.jetbrains.kotlin.gradle.targets.js.npm.resolved.KotlinProjectNpmResolution import org.jetbrains.kotlin.gradle.targets.js.npm.resolved.KotlinProjectNpmResolution
@@ -44,6 +45,8 @@ internal class KotlinProjectNpmResolver(
init { init {
addContainerListeners() addContainerListeners()
project.whenEvaluated {
val nodeJs = resolver.nodeJs val nodeJs = resolver.nodeJs
project.tasks.implementing(RequiresNpmDependencies::class) project.tasks.implementing(RequiresNpmDependencies::class)
.configureEach { task -> .configureEach { task ->
@@ -60,6 +63,7 @@ internal class KotlinProjectNpmResolver(
} }
} }
} }
}
private fun addContainerListeners() { private fun addContainerListeners() {
val kotlin = project.kotlinExtensionOrNull val kotlin = project.kotlinExtensionOrNull