Add Java tasks to relevant compilation APIs
This commit is contained in:
+6
@@ -9,8 +9,11 @@ package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||
import com.android.build.gradle.api.BaseVariant
|
||||
import org.gradle.api.file.FileCollection
|
||||
import org.gradle.api.provider.Property
|
||||
import org.gradle.api.tasks.TaskProvider
|
||||
import org.gradle.api.tasks.compile.JavaCompile
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
||||
import org.jetbrains.kotlin.gradle.plugin.getJavaTaskProvider
|
||||
import org.jetbrains.kotlin.gradle.plugin.getTestedVariantData
|
||||
|
||||
class KotlinJvmAndroidCompilation(
|
||||
@@ -46,4 +49,7 @@ import org.jetbrains.kotlin.gradle.plugin.getTestedVariantData
|
||||
androidVariant.compileConfiguration.name,
|
||||
androidVariant.runtimeConfiguration.name
|
||||
)
|
||||
|
||||
val compileJavaTaskProvider: TaskProvider<out JavaCompile>?
|
||||
get() = androidVariant.getJavaTaskProvider()
|
||||
}
|
||||
+12
-1
@@ -6,9 +6,12 @@
|
||||
@file:Suppress("PackageDirectoryMismatch") // Old package for compatibility
|
||||
package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||
|
||||
import org.gradle.api.plugins.JavaPluginConvention
|
||||
import org.gradle.api.tasks.compile.JavaCompile
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions
|
||||
import org.gradle.api.tasks.TaskProvider
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationWithResources
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinTarget
|
||||
import org.jetbrains.kotlin.gradle.targets.jvm.KotlinJvmTarget
|
||||
|
||||
open class KotlinJvmCompilation(
|
||||
override val target: KotlinJvmTarget,
|
||||
@@ -23,4 +26,12 @@ open class KotlinJvmCompilation(
|
||||
|
||||
override val compileKotlinTask: org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||
get() = super.compileKotlinTask as org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||
|
||||
val compileJavaTaskProvider: TaskProvider<out JavaCompile>?
|
||||
get() = if (target.withJavaEnabled) {
|
||||
val project = target.project
|
||||
val javaSourceSets = project.convention.getPlugin(JavaPluginConvention::class.java).sourceSets
|
||||
val javaSourceSet = javaSourceSets.getByName(compilationName)
|
||||
project.tasks.withType(JavaCompile::class.java).named(javaSourceSet.compileJavaTaskName)
|
||||
} else null
|
||||
}
|
||||
+5
@@ -8,6 +8,8 @@ package org.jetbrains.kotlin.gradle.plugin.mpp
|
||||
|
||||
import org.gradle.api.file.FileCollection
|
||||
import org.gradle.api.tasks.SourceSet
|
||||
import org.gradle.api.tasks.TaskProvider
|
||||
import org.gradle.api.tasks.compile.JavaCompile
|
||||
import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilation
|
||||
import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationOutput
|
||||
@@ -71,4 +73,7 @@ import org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompile
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
val compileJavaTaskProvider: TaskProvider<out JavaCompile>
|
||||
get() = target.project.tasks.withType(JavaCompile::class.java).named(javaSourceSet.compileJavaTaskName)
|
||||
}
|
||||
Reference in New Issue
Block a user