diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/Kapt3KotlinGradleSubplugin.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/Kapt3KotlinGradleSubplugin.kt index b9c4873577c..17941dfafd9 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/Kapt3KotlinGradleSubplugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/Kapt3KotlinGradleSubplugin.kt @@ -157,8 +157,6 @@ class Kapt3KotlinGradleSubplugin : KotlinGradleSubplugin { kaptClasspath.forEach { pluginOptions += SubpluginOption("apclasspath", it.absolutePath) } - javaCompile.source(generatedFilesDir) - pluginOptions += SubpluginOption("sources", generatedFilesDir.canonicalPath) pluginOptions += SubpluginOption("classes", getKaptClasssesDir(project, sourceSetName).canonicalPath) @@ -204,6 +202,7 @@ class Kapt3KotlinGradleSubplugin : KotlinGradleSubplugin { val kaptTaskName = kotlinCompile.name.replaceFirst("compile", "kapt") val kaptTask = project.tasks.create(kaptTaskName, KaptTask::class.java) kaptTask.kotlinCompileTask = kotlinCompile + kaptTask.javaCompileTask = javaCompile kotlinToKaptTasksMap[kotlinCompile] = kaptTask project.resolveSubpluginArtifacts(listOf(this@Kapt3KotlinGradleSubplugin)).flatMap { it.value }.forEach { @@ -218,7 +217,6 @@ class Kapt3KotlinGradleSubplugin : KotlinGradleSubplugin { // Add generated source dir as a source root for kotlinCompile and javaCompile kotlinCompile.source(sourcesOutputDir) - javaCompile.source(sourcesOutputDir) variantData?.let { if (AndroidGradleWrapper.isJackEnabled(it)) { AndroidGradleWrapper.addSourceToJack(it, sourcesOutputDir) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptTask.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptTask.kt index c0bdf5f365d..22610651d9c 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/internal/KaptTask.kt @@ -15,8 +15,6 @@ import org.jetbrains.kotlin.gradle.tasks.* import org.jetbrains.kotlin.incremental.classpathAsList import org.jetbrains.kotlin.incremental.destinationAsFile import java.io.File -import java.net.URLDecoder -import java.nio.charset.Charset open class KaptTask : AbstractCompile() { private val rawSourceRoots = FilteringSourceRootsContainer({ !it.isInsideDestinationDir() }) @@ -24,6 +22,7 @@ open class KaptTask : AbstractCompile() { internal val pluginOptions = CompilerPluginOptions() internal lateinit var kotlinCompileTask: KotlinCompile + internal lateinit var javaCompileTask: AbstractCompile override fun setSource(sources: Any?) { val filteredSources = rawSourceRoots.set(sources) @@ -75,5 +74,7 @@ open class KaptTask : AbstractCompile() { val compilerRunner = GradleCompilerRunner(project) val exitCode = compilerRunner.runJvmCompiler(sourceRoots.kotlinSourceFiles, sourceRoots.javaSourceRoots, args, environment) throwGradleExceptionIfError(exitCode) + + javaCompileTask.source(destinationDir.walkTopDown().filter { it.extension == "java" }.toList()) } } \ No newline at end of file