[Gradle, JS] Add tolerance for NodeJsExec inputFileProperty

- no error if it is not present
This commit is contained in:
Ilya Goncharov
2020-03-26 10:57:00 +03:00
parent a83f2faf9f
commit 5657afc35b
@@ -9,11 +9,9 @@ import org.gradle.api.file.RegularFileProperty
import org.gradle.api.tasks.*
import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsCompilation
import org.jetbrains.kotlin.gradle.targets.js.RequiredKotlinJsDependency
import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation
import org.jetbrains.kotlin.gradle.targets.js.npm.RequiresNpmDependencies
import org.jetbrains.kotlin.gradle.targets.js.npm.npmProject
import org.jetbrains.kotlin.gradle.tasks.registerTask
import org.jetbrains.kotlin.gradle.utils.getValue
import org.jetbrains.kotlin.gradle.utils.newFileProperty
open class NodeJsExec : AbstractExecTask<NodeJsExec>(NodeJsExec::class.java), RequiresNpmDependencies {
@@ -25,7 +23,7 @@ open class NodeJsExec : AbstractExecTask<NodeJsExec>(NodeJsExec::class.java), Re
init {
onlyIf {
inputFileProperty.asFile.map {
!inputFileProperty.isPresent || inputFileProperty.asFile.map {
it.exists()
}.get()
}
@@ -50,6 +48,10 @@ open class NodeJsExec : AbstractExecTask<NodeJsExec>(NodeJsExec::class.java), Re
}
override fun exec() {
if (inputFileProperty.isPresent) {
args(inputFileProperty.asFile.get())
}
if (sourceMapStackTraces) {
val sourceMapSupportArgs = mutableListOf(
"--require",
@@ -84,8 +86,6 @@ open class NodeJsExec : AbstractExecTask<NodeJsExec>(NodeJsExec::class.java), Re
it.dependsOn(nodeJs.npmInstallTask, compileKotlinTask)
it.configuration()
it.args(it.inputFileProperty.asFile.get())
}
}
}