Gradle, js: use project.whenEvaluated instead of project.afterEvaluate

This commit is contained in:
Sergey Rostov
2019-05-15 15:50:18 +03:00
parent 2d51e2bca5
commit 5cfe117fd7
2 changed files with 7 additions and 3 deletions
@@ -18,6 +18,7 @@ import org.jetbrains.kotlin.gradle.internal.ensureParentDirsCreated
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
import org.jetbrains.kotlin.gradle.plugin.whenEvaluated
import org.jetbrains.kotlin.gradle.targets.js.internal.RewriteSourceMapFilterReader
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsPlugin
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsRootExtension
@@ -304,8 +305,10 @@ internal class NpmResolver private constructor(val rootProject: Project) {
val npmProject = project.npmProject
val kotlin2JsCompile = compilation.compileKotlinTask
if (npmProject.compileOutputCopyDest != null) {
if (kotlin2JsCompile.outputFile.exists()) {
visitCompile(project.npmProject, kotlin2JsCompile)
project.whenEvaluated {
if (kotlin2JsCompile.outputFile.exists()) {
visitCompile(project.npmProject, kotlin2JsCompile)
}
}
kotlin2JsCompile.doLast {
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.gradle.targets.js.subtargets
import org.gradle.language.base.plugins.LifecycleBasePlugin
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
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.dsl.KotlinJsSubTargetDsl
import org.jetbrains.kotlin.gradle.targets.js.nodejs.NodeJsPlugin
@@ -79,7 +80,7 @@ abstract class KotlinJsSubTarget(
registerTestTaskInAggregate(testJs, target.testTask.doGetTask())
registerTestTask(testJs)
project.afterEvaluate {
project.whenEvaluated {
testJs.configure {
if (it.testFramework == null) {
configureDefaultTestFramework(it)