Use file trees in InspectClassesForMultiModuleIC
#KT-26208
This commit is contained in:
+13
-3
@@ -11,6 +11,7 @@ import org.gradle.api.plugins.JavaPluginConvention
|
||||
import org.gradle.api.tasks.*
|
||||
import org.gradle.jvm.tasks.Jar
|
||||
import org.jetbrains.kotlin.gradle.utils.isClassFile
|
||||
import org.jetbrains.kotlin.gradle.utils.isGradleVersionAtLeast
|
||||
import java.io.File
|
||||
|
||||
internal open class InspectClassesForMultiModuleIC : DefaultTask() {
|
||||
@@ -28,9 +29,18 @@ internal open class InspectClassesForMultiModuleIC : DefaultTask() {
|
||||
@Suppress("MemberVisibilityCanBePrivate")
|
||||
@get:InputFiles
|
||||
internal val classFiles: FileCollection
|
||||
get() = project.convention.findPlugin(JavaPluginConvention::class.java)?.let {
|
||||
it.sourceSets.findByName(sourceSetName)?.output?.asFileTree?.filter { it.isClassFile() }
|
||||
} ?: project.files()
|
||||
get() {
|
||||
val convention = project.convention.findPlugin(JavaPluginConvention::class.java)
|
||||
val sourceSet = convention?.sourceSets?.findByName(sourceSetName) ?: return project.files()
|
||||
|
||||
return if (isGradleVersionAtLeast(4, 0)) {
|
||||
val fileTrees = sourceSet.output.classesDirs.map { project.fileTree(it).include("**/*.class") }
|
||||
project.files(fileTrees)
|
||||
} else {
|
||||
sourceSet.output.asFileTree.filter { it.isClassFile() }
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@get:Input
|
||||
internal val archivePath: String
|
||||
|
||||
Reference in New Issue
Block a user