[Gradle] Don't try to build relative paths for Kapt exclude rules
#KT-52392 Fixed
This commit is contained in:
committed by
Space
parent
64a3ae1b3c
commit
7d49d3bac7
+3
-5
@@ -34,6 +34,7 @@ import org.jetbrains.kotlin.gradle.tasks.configuration.*
|
|||||||
import org.jetbrains.kotlin.gradle.tasks.locateTask
|
import org.jetbrains.kotlin.gradle.tasks.locateTask
|
||||||
import org.jetbrains.kotlin.gradle.tasks.registerTask
|
import org.jetbrains.kotlin.gradle.tasks.registerTask
|
||||||
import org.jetbrains.kotlin.gradle.utils.SingleWarningPerBuild
|
import org.jetbrains.kotlin.gradle.utils.SingleWarningPerBuild
|
||||||
|
import org.jetbrains.kotlin.gradle.utils.isParentOf
|
||||||
import java.io.ByteArrayOutputStream
|
import java.io.ByteArrayOutputStream
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.io.ObjectOutputStream
|
import java.io.ObjectOutputStream
|
||||||
@@ -470,16 +471,13 @@ class Kapt3GradleSubplugin @Inject internal constructor(private val registry: To
|
|||||||
private fun Kapt3SubpluginContext.createKaptGenerateStubsTask(): TaskProvider<KaptGenerateStubsTask> {
|
private fun Kapt3SubpluginContext.createKaptGenerateStubsTask(): TaskProvider<KaptGenerateStubsTask> {
|
||||||
val kaptTaskName = getKaptTaskName("kaptGenerateStubs")
|
val kaptTaskName = getKaptTaskName("kaptGenerateStubs")
|
||||||
val kaptTaskProvider = project.registerTask<KaptGenerateStubsTask>(kaptTaskName)
|
val kaptTaskProvider = project.registerTask<KaptGenerateStubsTask>(kaptTaskName)
|
||||||
val projectDir = project.projectDir
|
|
||||||
|
|
||||||
val taskConfig = KaptGenerateStubsConfig(kotlinCompilation, kotlinCompile)
|
val taskConfig = KaptGenerateStubsConfig(kotlinCompilation, kotlinCompile)
|
||||||
taskConfig.configureTask {
|
taskConfig.configureTask {
|
||||||
it.stubsDir.set(getKaptStubsDir())
|
it.stubsDir.set(getKaptStubsDir())
|
||||||
it.destinationDirectory.set(getKaptIncrementalDataDir())
|
it.destinationDirectory.set(getKaptIncrementalDataDir())
|
||||||
it.exclude(
|
val generatedSourcesDirs = listOf(sourcesOutputDir, kotlinSourcesOutputDir)
|
||||||
"${sourcesOutputDir.relativeTo(projectDir).path}/**",
|
it.exclude { fileElement -> generatedSourcesDirs.any { dir -> dir.isParentOf(fileElement.file) } }
|
||||||
"${kotlinSourcesOutputDir.relativeTo(projectDir).path}/**"
|
|
||||||
)
|
|
||||||
it.kaptClasspath.from(kaptClasspathConfigurations)
|
it.kaptClasspath.from(kaptClasspathConfigurations)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user