Code cleanup, remove extra logging
This commit is contained in:
+12
@@ -6,12 +6,24 @@
|
|||||||
<item name="com.android.build.gradle.api.AndroidSourceSet org.gradle.api.file.SourceDirectorySet getAllSource()">
|
<item name="com.android.build.gradle.api.AndroidSourceSet org.gradle.api.file.SourceDirectorySet getAllSource()">
|
||||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||||
</item>
|
</item>
|
||||||
|
<item name="com.android.build.gradle.api.AndroidSourceSet org.gradle.api.file.SourceDirectorySet getJava()">
|
||||||
|
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||||
|
</item>
|
||||||
<item name="com.android.build.gradle.api.ApkVariant com.android.builder.DefaultBuildType getBuildType()">
|
<item name="com.android.build.gradle.api.ApkVariant com.android.builder.DefaultBuildType getBuildType()">
|
||||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||||
</item>
|
</item>
|
||||||
<item name="com.android.build.gradle.api.ApkVariant java.util.List<com.android.builder.DefaultProductFlavor> getProductFlavors()">
|
<item name="com.android.build.gradle.api.ApkVariant java.util.List<com.android.builder.DefaultProductFlavor> getProductFlavors()">
|
||||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||||
</item>
|
</item>
|
||||||
|
<item name="com.android.build.gradle.api.BaseVariant com.android.build.gradle.tasks.AidlCompile getAidlCompile()">
|
||||||
|
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||||
|
</item>
|
||||||
|
<item name="com.android.build.gradle.api.BaseVariant com.android.build.gradle.tasks.ProcessAndroidResources getProcessResources()">
|
||||||
|
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||||
|
</item>
|
||||||
|
<item name="com.android.build.gradle.api.BaseVariant com.android.build.gradle.tasks.RenderscriptCompile getRenderscriptCompile()">
|
||||||
|
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||||
|
</item>
|
||||||
<item name="com.android.build.gradle.api.LibraryVariant com.android.builder.DefaultBuildType getBuildType()">
|
<item name="com.android.build.gradle.api.LibraryVariant com.android.builder.DefaultBuildType getBuildType()">
|
||||||
<annotation name="org.jetbrains.annotations.NotNull" />
|
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||||
</item>
|
</item>
|
||||||
|
|||||||
+3
@@ -8,6 +8,9 @@
|
|||||||
<val name="value" val=""fun apply(p0 : T) : Unit"" />
|
<val name="value" val=""fun apply(p0 : T) : Unit"" />
|
||||||
</annotation>
|
</annotation>
|
||||||
</item>
|
</item>
|
||||||
|
<item name="org.gradle.api.Project org.gradle.api.file.ConfigurableFileCollection files(java.lang.Object...)">
|
||||||
|
<annotation name="org.jetbrains.annotations.NotNull" />
|
||||||
|
</item>
|
||||||
<item name="org.gradle.api.Project org.gradle.api.initialization.dsl.ScriptHandler getBuildscript()">
|
<item name="org.gradle.api.Project org.gradle.api.initialization.dsl.ScriptHandler getBuildscript()">
|
||||||
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
<annotation name="jet.runtime.typeinfo.KotlinSignature">
|
||||||
<val name="value" val=""fun getBuildscript() : ScriptHandler"" />
|
<val name="value" val=""fun getBuildscript() : ScriptHandler"" />
|
||||||
|
|||||||
+3
@@ -2,4 +2,7 @@
|
|||||||
<item name='org.gradle.api.file.FileCollection org.gradle.api.file.FileCollection filter(org.gradle.api.specs.Spec<? super java.io.File>)'>
|
<item name='org.gradle.api.file.FileCollection org.gradle.api.file.FileCollection filter(org.gradle.api.specs.Spec<? super java.io.File>)'>
|
||||||
<annotation name='org.jetbrains.annotations.NotNull'/>
|
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||||
</item>
|
</item>
|
||||||
|
<item name='org.gradle.api.file.SourceDirectorySet java.util.Set<java.io.File> getSrcDirs()'>
|
||||||
|
<annotation name='org.jetbrains.annotations.NotNull'/>
|
||||||
|
</item>
|
||||||
</root>
|
</root>
|
||||||
+24
-33
@@ -162,16 +162,12 @@ open class KotlinAndroidPlugin: Plugin<Project> {
|
|||||||
|
|
||||||
private fun processVariants(variants: DefaultDomainObjectSet<out BaseVariant>, project: Project, androidExt: BaseExtension): Unit {
|
private fun processVariants(variants: DefaultDomainObjectSet<out BaseVariant>, project: Project, androidExt: BaseExtension): Unit {
|
||||||
val logger = project.getLogger()
|
val logger = project.getLogger()
|
||||||
logger.debug("Kotlin plugin processing variants")
|
val kotlinOptions = getExtention<K2JVMCompilerArguments>(androidExt, "kotlinOptions")
|
||||||
val kotlinOptions = (androidExt as ExtensionAware).getExtensions().getByName("kotlinOptions") as K2JVMCompilerArguments
|
|
||||||
val sourceSets = androidExt.getSourceSets()
|
val sourceSets = androidExt.getSourceSets()
|
||||||
val mainSourceSet = sourceSets.getByName(BuilderConstants.MAIN)
|
val mainSourceSet = sourceSets.getByName(BuilderConstants.MAIN)
|
||||||
val testSourceSet = sourceSets.getByName(BuilderConstants.INSTRUMENT_TEST)
|
val testSourceSet = sourceSets.getByName(BuilderConstants.INSTRUMENT_TEST)
|
||||||
logger.debug("Loaded ${BuilderConstants.MAIN} and ${BuilderConstants.INSTRUMENT_TEST} source sets")
|
|
||||||
|
|
||||||
for (variant in variants) {
|
for (variant in variants) {
|
||||||
logger.debug("Processing variant [${variant}]")
|
|
||||||
|
|
||||||
if (variant is LibraryVariant || variant is ApkVariant) {
|
if (variant is LibraryVariant || variant is ApkVariant) {
|
||||||
val buildType: BuildType = if (variant is LibraryVariant) {
|
val buildType: BuildType = if (variant is LibraryVariant) {
|
||||||
variant.getBuildType()
|
variant.getBuildType()
|
||||||
@@ -202,25 +198,23 @@ open class KotlinAndroidPlugin: Plugin<Project> {
|
|||||||
val javaSourceList = ArrayList<Any?>()
|
val javaSourceList = ArrayList<Any?>()
|
||||||
|
|
||||||
if (variant is TestVariant) {
|
if (variant is TestVariant) {
|
||||||
javaSourceList.addAll(testSourceSet.getJava()!!.getSrcDirs()!!)
|
javaSourceList.addAll(testSourceSet.getJava().getSrcDirs())
|
||||||
val testKotlinSource = (testSourceSet as ExtensionAware).getExtensions().getByName("kotlin") as KotlinSourceSet
|
val testKotlinSource = getExtention<KotlinSourceSet>(testSourceSet, "kotlin")
|
||||||
logger.debug("Attaching ${testKotlinSource.getKotlin().getSrcDirs()} to variant ${variantName}")
|
|
||||||
kotlinTask.source(testKotlinSource.getKotlin())
|
kotlinTask.source(testKotlinSource.getKotlin())
|
||||||
} else {
|
} else {
|
||||||
javaSourceList.addAll(mainSourceSet.getJava()!!.getSrcDirs()!!)
|
javaSourceList.addAll(mainSourceSet.getJava().getSrcDirs())
|
||||||
val mainKotlinSource = (mainSourceSet as ExtensionAware).getExtensions().getByName("kotlin") as KotlinSourceSet
|
val mainKotlinSource = getExtention<KotlinSourceSet>(mainSourceSet, "kotlin")
|
||||||
logger.debug("Attaching ${mainKotlinSource.getKotlin().getSrcDirs()} to variant ${variantName}")
|
|
||||||
kotlinTask.source(mainKotlinSource.getKotlin())
|
kotlinTask.source(mainKotlinSource.getKotlin())
|
||||||
}
|
}
|
||||||
|
|
||||||
if (null != buildTypeSourceSet) {
|
if (null != buildTypeSourceSet) {
|
||||||
javaSourceList.add(buildTypeSourceSet.getJava()!!.getSrcDirs()!!)
|
javaSourceList.add(buildTypeSourceSet.getJava().getSrcDirs())
|
||||||
kotlinTask.source(((buildTypeSourceSet as ExtensionAware).getExtensions().getByName("kotlin") as KotlinSourceSet).getKotlin())
|
kotlinTask.source(getExtention<KotlinSourceSet>(buildTypeSourceSet, "kotlin").getKotlin())
|
||||||
}
|
}
|
||||||
javaSourceList.add(callable<File>{ variant.getProcessResources()!!.getSourceOutputDir()!! })
|
javaSourceList.add(callable<File?>{ variant.getProcessResources().getSourceOutputDir() })
|
||||||
javaSourceList.add(callable<File>{ variant.getGenerateBuildConfig()!!.getSourceOutputDir()!! })
|
javaSourceList.add(callable<File?>{ variant.getGenerateBuildConfig()?.getSourceOutputDir() })
|
||||||
javaSourceList.add(callable<File>{ variant.getAidlCompile()!!.getSourceOutputDir()!! })
|
javaSourceList.add(callable<File?>{ variant.getAidlCompile().getSourceOutputDir() })
|
||||||
javaSourceList.add(callable<File>{ variant.getRenderscriptCompile()!!.getSourceOutputDir()!! })
|
javaSourceList.add(callable<File?>{ variant.getRenderscriptCompile().getSourceOutputDir() })
|
||||||
|
|
||||||
if (variant is ApkVariant) {
|
if (variant is ApkVariant) {
|
||||||
for (flavour in variant.getProductFlavors().iterator()) {
|
for (flavour in variant.getProductFlavors().iterator()) {
|
||||||
@@ -233,24 +227,16 @@ open class KotlinAndroidPlugin: Plugin<Project> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
logger.debug("Kotlin Source list for [${variantName}]")
|
|
||||||
kotlinTask.getSource().forEach { f -> logger.debug(f.getPath()) }
|
|
||||||
logger.debug("Kotlin Source list end")
|
|
||||||
|
|
||||||
val basePlugin : BasePlugin = project.getPlugins().getPlugin("android") as BasePlugin
|
|
||||||
|
|
||||||
kotlinTask.doFirst({ task ->
|
kotlinTask.doFirst({ task ->
|
||||||
|
var plugin = project.getPlugins().getPlugin("android")
|
||||||
|
if (null == plugin) {
|
||||||
|
plugin = project.getPlugins().getPlugin("android-library")
|
||||||
|
}
|
||||||
|
val basePlugin : BasePlugin = plugin as BasePlugin
|
||||||
val javaSources = project.files(javaSourceList)
|
val javaSources = project.files(javaSourceList)
|
||||||
logger.debug("Java Source list for [${variantName}]")
|
val androidRT = project.files(basePlugin.getRuntimeJarList())
|
||||||
javaSources?.forEach { f -> logger.debug(f.getPath()) }
|
val fullClasspath = javaTask.getClasspath() + (javaSources + androidRT)
|
||||||
logger.debug("Java Source list end")
|
(task as AbstractCompile).setClasspath(fullClasspath)
|
||||||
|
|
||||||
val cp = javaTask.getClasspath() + javaSources
|
|
||||||
val cpWithRt = project.files(basePlugin.getRuntimeJarList())!! + cp
|
|
||||||
(task as AbstractCompile).setClasspath(cpWithRt)
|
|
||||||
logger.debug("Final Classpath for variant [${variantName}]")
|
|
||||||
cpWithRt?.forEach { f -> logger.debug(f.getPath()) }
|
|
||||||
logger.debug("Final Classpath end")
|
|
||||||
})
|
})
|
||||||
|
|
||||||
javaTask.dependsOn(kotlinTaskName)
|
javaTask.dependsOn(kotlinTaskName)
|
||||||
@@ -259,6 +245,11 @@ open class KotlinAndroidPlugin: Plugin<Project> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun <T> getExtention(obj: Any, extensionName: String): T {
|
||||||
|
return (obj as ExtensionAware).getExtensions().getByName(extensionName) as T
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
open class KSpec<T: Any?>(val predicate: (T) -> Boolean): Spec<T> {
|
open class KSpec<T: Any?>(val predicate: (T) -> Boolean): Spec<T> {
|
||||||
|
|||||||
Reference in New Issue
Block a user