Kapt3: Replace kapt2 in Ant and Maven artifacts with kapt3
This commit is contained in:
committed by
Yan Zhulanow
parent
64046f1e40
commit
bd9d33fe44
@@ -7,8 +7,7 @@
|
||||
<properties>
|
||||
<maven.version>3.0.4</maven.version>
|
||||
<old-kapt.src>${basedir}/src/main/kotlin</old-kapt.src>
|
||||
<annotation-processing.src>${basedir}/../../../plugins/annotation-processing/src</annotation-processing.src>
|
||||
<java-model-wrappers.src>${basedir}/../../../plugins/java-model-wrappers/src</java-model-wrappers.src>
|
||||
<annotation-processing.src>${basedir}/../../../plugins/kapt3/src</annotation-processing.src>
|
||||
<annotation-processing.target-src>${basedir}/target/src/main/kotlin</annotation-processing.target-src>
|
||||
<annotation-processing.target-src-test>${basedir}/target/src/test/kotlin</annotation-processing.target-src-test>
|
||||
<annotation-processing.target-resource>${basedir}/target/resource</annotation-processing.target-resource>
|
||||
@@ -83,7 +82,6 @@
|
||||
<outputDirectory>${annotation-processing.target-src}</outputDirectory>
|
||||
<resources>
|
||||
<resource><directory>${annotation-processing.src}</directory></resource>
|
||||
<resource><directory>${java-model-wrappers.src}</directory></resource>
|
||||
<resource><directory>${old-kapt.src}</directory></resource>
|
||||
</resources>
|
||||
</configuration>
|
||||
|
||||
+11
-14
@@ -33,17 +33,17 @@ import org.jetbrains.kotlin.gradle.plugin.SubpluginOption
|
||||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||
import java.io.File
|
||||
|
||||
// apply plugin: 'kotlin-kapt2'
|
||||
class Kapt2GradleSubplugin : Plugin<Project> {
|
||||
// apply plugin: 'kotlin-kapt'
|
||||
class Kapt3GradleSubplugin : Plugin<Project> {
|
||||
companion object {
|
||||
fun isEnabled(project: Project) = project.plugins.findPlugin(Kapt2GradleSubplugin::class.java) != null
|
||||
fun isEnabled(project: Project) = project.plugins.findPlugin(Kapt3GradleSubplugin::class.java) != null
|
||||
}
|
||||
|
||||
override fun apply(project: Project) {}
|
||||
}
|
||||
|
||||
// Subplugin for the Kotlin Gradle plugin
|
||||
class Kapt2KotlinGradleSubplugin : KotlinGradleSubplugin<KotlinCompile> {
|
||||
class Kapt3KotlinGradleSubplugin : KotlinGradleSubplugin<KotlinCompile> {
|
||||
companion object {
|
||||
private val VERBOSE_OPTION_NAME = "kapt.verbose"
|
||||
|
||||
@@ -52,10 +52,10 @@ class Kapt2KotlinGradleSubplugin : KotlinGradleSubplugin<KotlinCompile> {
|
||||
}
|
||||
}
|
||||
|
||||
override fun isApplicable(project: Project, task: KotlinCompile) = Kapt2GradleSubplugin.isEnabled(project)
|
||||
override fun isApplicable(project: Project, task: KotlinCompile) = Kapt3GradleSubplugin.isEnabled(project)
|
||||
|
||||
fun getKaptGeneratedDir(project: Project, sourceSetName: String): File {
|
||||
return File(project.project.buildDir, "generated/source/kapt2/$sourceSetName")
|
||||
return File(project.project.buildDir, "generated/source/kapt/$sourceSetName")
|
||||
}
|
||||
|
||||
private fun Project.findKaptConfiguration(sourceSetName: String): Configuration? {
|
||||
@@ -75,10 +75,10 @@ class Kapt2KotlinGradleSubplugin : KotlinGradleSubplugin<KotlinCompile> {
|
||||
val kaptClasspath = arrayListOf<File>()
|
||||
|
||||
fun handleSourceSet(sourceSetName: String) {
|
||||
val kapt2Configuration = project.findKaptConfiguration(sourceSetName)
|
||||
if (kapt2Configuration != null && kapt2Configuration.dependencies.size > 1) {
|
||||
javaCompile.dependsOn(kapt2Configuration.buildDependencies)
|
||||
kaptClasspath.addAll(kapt2Configuration.resolve())
|
||||
val kaptConfiguration = project.findKaptConfiguration(sourceSetName)
|
||||
if (kaptConfiguration != null && kaptConfiguration.dependencies.size > 1) {
|
||||
javaCompile.dependsOn(kaptConfiguration.buildDependencies)
|
||||
kaptClasspath.addAll(kaptConfiguration.resolve())
|
||||
}
|
||||
}
|
||||
|
||||
@@ -136,16 +136,13 @@ class Kapt2KotlinGradleSubplugin : KotlinGradleSubplugin<KotlinCompile> {
|
||||
val annotationsFile = File(kotlinCompile.taskBuildDirectory, "source-annotations.txt")
|
||||
kotlinCompile.sourceAnnotationsRegistry = SourceAnnotationsRegistry(annotationsFile)
|
||||
|
||||
val incrementalCompilationDataFile = File(project.buildDir, "tmp/kapt2/$sourceSetName/incrementalData.txt")
|
||||
pluginOptions += SubpluginOption("incrementalData", incrementalCompilationDataFile.absolutePath)
|
||||
|
||||
return pluginOptions
|
||||
}
|
||||
|
||||
private val BaseVariantData<*>.sourceProviders: List<SourceProvider>
|
||||
get() = variantConfiguration.sortedSourceProviders
|
||||
|
||||
override fun getPluginName() = "org.jetbrains.kotlin.kapt2"
|
||||
override fun getPluginName() = "org.jetbrains.kotlin.kapt3"
|
||||
override fun getGroupName() = "org.jetbrains.kotlin"
|
||||
override fun getArtifactName() = "kotlin-annotation-processing"
|
||||
}
|
||||
+1
-1
@@ -1 +1 @@
|
||||
implementation-class=org.jetbrains.kotlin.gradle.internal.Kapt2GradleSubplugin
|
||||
implementation-class=org.jetbrains.kotlin.gradle.internal.Kapt3GradleSubplugin
|
||||
+1
-1
@@ -1,2 +1,2 @@
|
||||
org.jetbrains.kotlin.gradle.internal.AndroidSubplugin
|
||||
org.jetbrains.kotlin.gradle.internal.Kapt2KotlinGradleSubplugin
|
||||
org.jetbrains.kotlin.gradle.internal.Kapt3KotlinGradleSubplugin
|
||||
Reference in New Issue
Block a user