Gradle, js: create run task only when project evaluated
As it may be created after js target configuration by java application plugin
This commit is contained in:
+9
-1
@@ -11,6 +11,7 @@ import org.jetbrains.kotlin.gradle.plugin.AbstractKotlinTargetConfigurator.Compa
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinOnlyTarget
|
||||
import org.jetbrains.kotlin.gradle.plugin.whenEvaluated
|
||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBrowserDsl
|
||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsNodeDsl
|
||||
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsTargetDsl
|
||||
@@ -31,7 +32,14 @@ class KotlinJsTarget(project: Project, platformType: KotlinPlatformType) :
|
||||
)
|
||||
|
||||
val runTaskName get() = lowerCamelCaseName(disambiguationClassifier, runTaskNameSuffix)
|
||||
val runTask get() = project.tasks.maybeCreate(runTaskName)
|
||||
val runTask
|
||||
get() = project.tasks.maybeCreate(runTaskName).also {
|
||||
if (runTaskName != runTaskNameSuffix) {
|
||||
project.whenEvaluated {
|
||||
project.tasks.maybeCreate(runTaskNameSuffix).dependsOn(it)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
val browser by lazy {
|
||||
KotlinBrowserJs(this).also {
|
||||
|
||||
-4
@@ -24,10 +24,6 @@ open class KotlinJsTargetConfigurator(kotlinPluginVersion: String) :
|
||||
target.compilations.forEach {
|
||||
it.compileKotlinTask.dependsOn(target.project.nodeJs.root.npmResolveTask)
|
||||
}
|
||||
|
||||
if (target.disambiguationClassifier != null) {
|
||||
target.project.tasks.maybeCreate(runTaskNameSuffix).dependsOn(target.runTask)
|
||||
}
|
||||
}
|
||||
|
||||
override fun configureTest(target: KotlinOnlyTarget<KotlinJsCompilation>) {
|
||||
|
||||
Reference in New Issue
Block a user