Set source with SourceDirectorySet instead of file list (#4151)

Fixes #4127
This commit is contained in:
Matthew Haughton
2021-11-19 03:45:17 +11:00
committed by GitHub
parent d7617251f4
commit 75afdf6c56

View File

@@ -23,7 +23,7 @@ internal class DetektJvm(private val project: Project) {
val kotlinSourceSet = (sourceSet as HasConvention).convention.plugins["kotlin"] as? KotlinSourceSet
?: throw GradleException("Kotlin source set not found. Please report on detekt's issue tracker")
registerDetektTask(DetektPlugin.DETEKT_TASK_NAME + sourceSet.name.capitalize(), extension) {
setSource(kotlinSourceSet.kotlin.files)
source = kotlinSourceSet.kotlin
classpath.setFrom(sourceSet.compileClasspath.existingFiles(), sourceSet.output.classesDirs.existingFiles())
// If a baseline file is configured as input file, it must exist to be configured, otherwise the task fails.
// We try to find the configured baseline or alternatively a specific variant matching this task.
@@ -68,7 +68,7 @@ internal class DetektJvm(private val project: Project) {
val kotlinSourceSet = (sourceSet as HasConvention).convention.plugins["kotlin"] as? KotlinSourceSet
?: throw GradleException("Kotlin source set not found. Please report on detekt's issue tracker")
registerCreateBaselineTask(DetektPlugin.BASELINE_TASK_NAME + sourceSet.name.capitalize(), extension) {
setSource(kotlinSourceSet.kotlin.files)
source = kotlinSourceSet.kotlin
classpath.setFrom(sourceSet.compileClasspath.existingFiles(), sourceSet.output.classesDirs.existingFiles())
val variantBaselineFile = extension.baseline?.addVariantName(sourceSet.name)
baseline.set(project.layout.file(project.provider { variantBaselineFile }))