From f6263e64e07aed85ab57928a1901c18968fc7549 Mon Sep 17 00:00:00 2001 From: Ivan Gavrilovic Date: Thu, 25 Nov 2021 19:14:46 +0000 Subject: [PATCH] KT-49910: Fix adding sources for Android projects Avoid adding ConfigurableFileTrees to sources as that causes individual *.java files to be evaluated as sources roots. To pass the dependency info, manual dependsOn is used, but in the future SourceRoots should be fixed to carry the dependency info. --- .../org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt | 7 ++++++- .../gradle/targets/android/Android25ProjectHandler.kt | 4 ---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt index d982d61ce92..d836ce2e59c 100755 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt @@ -1027,7 +1027,12 @@ abstract class AbstractAndroidProjectHandler(private val kotlinConfigurationTool val javaTask = variantData.getJavaTaskProvider() val kotlinTask = compilation.compileKotlinTaskProvider - compilation.androidVariant.forEachJavaSourceDir { sources -> kotlinTask.configure { it.source(sources.dir) } } + compilation.androidVariant.forEachJavaSourceDir { sources -> + kotlinTask.configure { + it.source(sources.dir) + it.dependsOn(sources) + } + } wireKotlinTasks(project, compilation, androidPlugin, androidExt, variantData, javaTask, kotlinTask) } } diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/android/Android25ProjectHandler.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/android/Android25ProjectHandler.kt index 1cd9272a2c2..696263c17d9 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/android/Android25ProjectHandler.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/android/Android25ProjectHandler.kt @@ -60,10 +60,6 @@ class Android25ProjectHandler( val preJavaClasspathKey = variantData.registerPreJavacGeneratedBytecode(preJavaKotlinOutput) kotlinTask.configure { kotlinTaskInstance -> - kotlinTaskInstance.source( - variantData.getSourceFolders(SourceKind.JAVA) - ) - kotlinTaskInstance.classpath = project.files() .from(variantData.getCompileClasspath(preJavaClasspathKey)) .from(Callable { AndroidGradleWrapper.getRuntimeJars(androidPlugin, androidExt) })