[Gradle] Don't use reflection to get java compile task provider
^KT-56904 In Progress
This commit is contained in:
committed by
Space Team
parent
8fc847fe5c
commit
601f90917b
+1
-9
@@ -24,7 +24,6 @@ import org.gradle.api.specs.Spec
|
||||
import org.gradle.api.tasks.TaskProvider
|
||||
import org.gradle.api.tasks.bundling.Zip
|
||||
import org.gradle.api.tasks.compile.AbstractCompile
|
||||
import org.gradle.api.tasks.compile.JavaCompile
|
||||
import org.jetbrains.kotlin.gradle.dsl.kotlinExtension
|
||||
import org.jetbrains.kotlin.gradle.internal.Kapt3GradleSubplugin
|
||||
import org.jetbrains.kotlin.gradle.internal.Kapt3GradleSubplugin.Companion.getKaptGeneratedClassesDirectory
|
||||
@@ -41,7 +40,6 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||
import org.jetbrains.kotlin.gradle.tasks.KotlinTasksProvider
|
||||
import org.jetbrains.kotlin.gradle.tasks.configuration.KaptGenerateStubsConfig
|
||||
import org.jetbrains.kotlin.gradle.tasks.configuration.KotlinCompileConfig
|
||||
import org.jetbrains.kotlin.gradle.tasks.thisTaskProvider
|
||||
import org.jetbrains.kotlin.gradle.testing.internal.kotlinTestRegistry
|
||||
import org.jetbrains.kotlin.gradle.tooling.includeKotlinToolingMetadataInApk
|
||||
import org.jetbrains.kotlin.gradle.utils.whenEvaluated
|
||||
@@ -230,7 +228,7 @@ internal class AndroidProjectHandler(
|
||||
compilation.associateWith(testedCompilation)
|
||||
}
|
||||
|
||||
val javaTask = variantData.getJavaTaskProvider()
|
||||
val javaTask = variantData.javaCompileProvider
|
||||
@Suppress("UNCHECKED_CAST") val kotlinTask = compilation.compileTaskProvider as TaskProvider<KotlinCompile>
|
||||
compilation.androidVariant.forEachJavaSourceDir { sources ->
|
||||
kotlinTask.configure {
|
||||
@@ -376,12 +374,6 @@ internal fun getVariantName(
|
||||
@Suppress("TYPEALIAS_EXPANSION_DEPRECATION") variant: DeprecatedAndroidBaseVariant
|
||||
): String = variant.name
|
||||
|
||||
@Suppress("UNCHECKED_CAST", "TYPEALIAS_EXPANSION_DEPRECATION")
|
||||
internal fun DeprecatedAndroidBaseVariant.getJavaTaskProvider(): TaskProvider<out JavaCompile> =
|
||||
this::class.java.methods.firstOrNull { it.name == "getJavaCompileProvider" }
|
||||
?.invoke(this) as? TaskProvider<JavaCompile>
|
||||
?: @Suppress("DEPRECATION") javaCompile.thisTaskProvider
|
||||
|
||||
/** Filter for the AGP test variant classpath artifacts. */
|
||||
class AndroidTestedVariantArtifactsFilter(
|
||||
private val artifactCollection: ArtifactCollection,
|
||||
|
||||
+1
-2
@@ -15,7 +15,6 @@ import org.gradle.api.tasks.compile.JavaCompile
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmCompilerOptions
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions
|
||||
import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions
|
||||
import org.jetbrains.kotlin.gradle.plugin.getJavaTaskProvider
|
||||
import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationImpl
|
||||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompilationTask
|
||||
import javax.inject.Inject
|
||||
@@ -56,6 +55,6 @@ open class KotlinJvmAndroidCompilation @Inject internal constructor(
|
||||
get() = compilation.compileTaskProvider as TaskProvider<KotlinCompilationTask<KotlinJvmCompilerOptions>>
|
||||
|
||||
val compileJavaTaskProvider: TaskProvider<out JavaCompile>
|
||||
get() = androidVariant.getJavaTaskProvider()
|
||||
get() = androidVariant.javaCompileProvider
|
||||
|
||||
}
|
||||
|
||||
-6
@@ -5,12 +5,6 @@
|
||||
|
||||
package org.jetbrains.kotlin.gradle.tasks
|
||||
|
||||
import org.gradle.api.Task
|
||||
import org.gradle.api.tasks.TaskProvider
|
||||
|
||||
const val KOTLIN_BUILD_DIR_NAME = "kotlin"
|
||||
const val USING_JVM_INCREMENTAL_COMPILATION_MESSAGE = "Using Kotlin/JVM incremental compilation"
|
||||
const val USING_JS_INCREMENTAL_COMPILATION_MESSAGE = "Using Kotlin/JS incremental compilation"
|
||||
|
||||
internal inline val <reified T : Task> T.thisTaskProvider: TaskProvider<out T>
|
||||
get() = checkNotNull(project.locateTask<T>(name))
|
||||
Reference in New Issue
Block a user