[Gradle] Use FileCollection instead lambda + lazy in KotlinNativeToolRunner
FileCollection is lazy on its own.
This commit is contained in:
+5
-10
@@ -6,6 +6,7 @@
|
|||||||
package org.jetbrains.kotlin.compilerRunner
|
package org.jetbrains.kotlin.compilerRunner
|
||||||
|
|
||||||
import org.gradle.api.Project
|
import org.gradle.api.Project
|
||||||
|
import org.gradle.api.file.FileCollection
|
||||||
import org.gradle.api.tasks.*
|
import org.gradle.api.tasks.*
|
||||||
import org.jetbrains.kotlin.cli.common.messages.MessageRenderer
|
import org.jetbrains.kotlin.cli.common.messages.MessageRenderer
|
||||||
import org.jetbrains.kotlin.gradle.dsl.NativeCacheKind
|
import org.jetbrains.kotlin.gradle.dsl.NativeCacheKind
|
||||||
@@ -69,22 +70,16 @@ internal abstract class KotlinNativeToolRunner(
|
|||||||
val konanPropertiesFile: File,
|
val konanPropertiesFile: File,
|
||||||
@get:Input
|
@get:Input
|
||||||
val jvmArgs: List<String>,
|
val jvmArgs: List<String>,
|
||||||
classpathProvider: () -> Set<File>,
|
|
||||||
) {
|
|
||||||
@get:Classpath
|
@get:Classpath
|
||||||
val classpath by lazy(classpathProvider)
|
val classpath: FileCollection
|
||||||
|
) {
|
||||||
|
|
||||||
constructor(project: Project) : this(
|
constructor(project: Project) : this(
|
||||||
konanVersion = project.konanVersion,
|
konanVersion = project.konanVersion,
|
||||||
konanHome = project.konanHome,
|
konanHome = project.konanHome,
|
||||||
konanPropertiesFile = project.file("${project.konanHome}/konan/konan.properties"),
|
konanPropertiesFile = project.file("${project.konanHome}/konan/konan.properties"),
|
||||||
jvmArgs = project.jvmArgs,
|
jvmArgs = project.jvmArgs,
|
||||||
classpathProvider = {
|
classpath = project.files(project.kotlinNativeCompilerJar, "${project.konanHome}/konan/lib/trove4j.jar")
|
||||||
project.files(
|
|
||||||
project.kotlinNativeCompilerJar,
|
|
||||||
"${project.konanHome}/konan/lib/trove4j.jar"
|
|
||||||
).files
|
|
||||||
}
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -115,7 +110,7 @@ internal abstract class KotlinNativeToolRunner(
|
|||||||
).toMap()
|
).toMap()
|
||||||
}
|
}
|
||||||
|
|
||||||
final override val classpath get() = settings.classpath
|
final override val classpath get() = settings.classpath.files
|
||||||
|
|
||||||
final override fun checkClasspath() =
|
final override fun checkClasspath() =
|
||||||
check(classpath.isNotEmpty()) {
|
check(classpath.isNotEmpty()) {
|
||||||
|
|||||||
Reference in New Issue
Block a user