Refactoring: use same module name as Intellij
This commit is contained in:
+1
@@ -37,6 +37,7 @@ class KotlinGradleIT: BaseGradleIT() {
|
||||
|
||||
project.build("build") {
|
||||
assertSuccessful()
|
||||
assertFileExists("build/classes/main/META-INF/kotlinProject_main.kotlin_module")
|
||||
assertReportExists()
|
||||
assertContains(":compileKotlin", ":compileTestKotlin")
|
||||
}
|
||||
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
package demo
|
||||
|
||||
fun dummyFun() {}
|
||||
+1
-4
@@ -106,17 +106,14 @@ private fun Project.createKotlinAfterJavaTask(
|
||||
kotlinOptions: KotlinJvmOptionsImpl?,
|
||||
tasksProvider: KotlinTasksProvider
|
||||
): KotlinCompile {
|
||||
val kotlinAfterJavaTask = with (tasksProvider.createKotlinJVMTask(this, kotlinTask.name + KOTLIN_AFTER_JAVA_TASK_SUFFIX)) {
|
||||
val kotlinAfterJavaTask = with (tasksProvider.createKotlinJVMTask(this, kotlinTask.name + KOTLIN_AFTER_JAVA_TASK_SUFFIX, kotlinTask.sourceSetName)) {
|
||||
mapClasspath { kotlinTask.classpath }
|
||||
this
|
||||
}
|
||||
|
||||
kotlinAfterJavaTask.dependsOn(javaTask)
|
||||
javaTask.finalizedByIfNotFailed(kotlinAfterJavaTask)
|
||||
|
||||
kotlinAfterJavaTask.moduleName = kotlinTask.moduleName
|
||||
kotlinAfterJavaTask.parentKotlinOptionsImpl = kotlinOptions
|
||||
|
||||
return kotlinAfterJavaTask
|
||||
}
|
||||
|
||||
|
||||
+3
-4
@@ -82,7 +82,6 @@ internal abstract class KotlinSourceSetProcessor<T : AbstractKotlinCompile<*>>(
|
||||
logger.kotlinDebug("Creating kotlin compile task $name")
|
||||
val kotlinCompile = doCreateTask(project, name)
|
||||
kotlinCompile.description = taskDescription
|
||||
kotlinCompile.moduleName = "${project.name}-$name"
|
||||
kotlinCompile.mapClasspath { sourceSet.compileClasspath }
|
||||
kotlinCompile.destinationDir = defaultKotlinDestinationDir
|
||||
return kotlinCompile
|
||||
@@ -109,7 +108,7 @@ internal class Kotlin2JvmSourceSetProcessor(
|
||||
get() = File(project.buildDir, "kotlin-classes/$sourceSetName")
|
||||
|
||||
override fun doCreateTask(project: Project, taskName: String): KotlinCompile =
|
||||
tasksProvider.createKotlinJVMTask(project, taskName)
|
||||
tasksProvider.createKotlinJVMTask(project, taskName, sourceSet.name)
|
||||
|
||||
override fun doTargetSpecificProcessing() {
|
||||
val aptConfiguration = project.createAptConfiguration(sourceSet.name, kotlinPluginVersion)
|
||||
@@ -185,7 +184,7 @@ internal class Kotlin2JsSourceSetProcessor(
|
||||
private val build = project.tasks.findByName("build")
|
||||
|
||||
override fun doCreateTask(project: Project, taskName: String): Kotlin2JsCompile =
|
||||
tasksProvider.createKotlinJSTask(project, taskName)
|
||||
tasksProvider.createKotlinJSTask(project, taskName, sourceSet.name)
|
||||
|
||||
override fun doTargetSpecificProcessing() {
|
||||
val taskName = kotlinTask.name
|
||||
@@ -332,7 +331,7 @@ internal open class KotlinAndroidPlugin(
|
||||
|
||||
val kotlinTaskName = "compile${variantDataName.capitalize()}Kotlin"
|
||||
// todo: Investigate possibility of creating and configuring kotlinTask before evaluation
|
||||
val kotlinTask = tasksProvider.createKotlinJVMTask(project, kotlinTaskName)
|
||||
val kotlinTask = tasksProvider.createKotlinJVMTask(project, kotlinTaskName, variantData.name)
|
||||
kotlinTask.parentKotlinOptionsImpl = rootKotlinOptions
|
||||
|
||||
// store kotlin classes in separate directory. They will serve as class-path to java compiler
|
||||
|
||||
+5
-1
@@ -5,6 +5,7 @@ import org.codehaus.groovy.runtime.MethodClosure
|
||||
import org.gradle.api.GradleException
|
||||
import org.gradle.api.file.SourceDirectorySet
|
||||
import org.gradle.api.logging.Logger
|
||||
import org.gradle.api.tasks.SourceSet
|
||||
import org.gradle.api.tasks.SourceTask
|
||||
import org.gradle.api.tasks.TaskAction
|
||||
import org.gradle.api.tasks.compile.AbstractCompile
|
||||
@@ -40,6 +41,7 @@ import org.jetbrains.kotlin.progress.CompilationCanceledStatus
|
||||
import org.jetbrains.kotlin.utils.LibraryUtils
|
||||
import java.io.File
|
||||
import java.util.*
|
||||
import kotlin.properties.Delegates
|
||||
|
||||
const val ANNOTATIONS_PLUGIN_NAME = "org.jetbrains.kotlin.kapt"
|
||||
const val KOTLIN_BUILD_DIR_NAME = "kotlin"
|
||||
@@ -68,7 +70,9 @@ abstract class AbstractKotlinCompile<T : CommonCompilerArguments>() : AbstractCo
|
||||
internal var anyClassesCompiled: Boolean = false
|
||||
internal var friendTaskName: String? = null
|
||||
internal var javaOutputDir: File? = null
|
||||
internal var moduleName: String = "${project.name}-${this.name}"
|
||||
internal var sourceSetName: String by Delegates.notNull()
|
||||
protected val moduleName: String
|
||||
get() = "${project.name}_$sourceSetName"
|
||||
|
||||
override fun compile() {
|
||||
assert(false, { "unexpected call to compile()" })
|
||||
|
||||
+4
-2
@@ -1,20 +1,22 @@
|
||||
package org.jetbrains.kotlin.gradle.tasks
|
||||
|
||||
import org.gradle.api.Project
|
||||
import org.gradle.api.tasks.SourceSet
|
||||
import org.jetbrains.kotlin.gradle.plugin.RegexTaskToFriendTaskMapper
|
||||
import org.jetbrains.kotlin.gradle.plugin.TaskToFriendTaskMapper
|
||||
import org.jetbrains.kotlin.gradle.plugin.mapKotlinTaskProperties
|
||||
|
||||
internal open class KotlinTasksProvider {
|
||||
fun createKotlinJVMTask(project: Project, name: String): KotlinCompile {
|
||||
fun createKotlinJVMTask(project: Project, name: String, sourceSetName: String): KotlinCompile {
|
||||
return project.tasks.create(name, KotlinCompile::class.java).apply {
|
||||
this.sourceSetName = sourceSetName
|
||||
friendTaskName = taskToFriendTaskMapper[this]
|
||||
mapKotlinTaskProperties(project, this)
|
||||
outputs.upToDateWhen { isCacheFormatUpToDate }
|
||||
}
|
||||
}
|
||||
|
||||
fun createKotlinJSTask(project: Project, name: String): Kotlin2JsCompile =
|
||||
fun createKotlinJSTask(project: Project, name: String, sourceSetName: String): Kotlin2JsCompile =
|
||||
project.tasks.create(name, Kotlin2JsCompile::class.java)
|
||||
|
||||
protected open val taskToFriendTaskMapper: TaskToFriendTaskMapper =
|
||||
|
||||
+1
-1
@@ -4,7 +4,7 @@ import org.jetbrains.kotlin.config.IncrementalCompilation
|
||||
import org.jetbrains.kotlin.incremental.CacheVersion
|
||||
import java.io.File
|
||||
|
||||
internal const val GRADLE_CACHE_VERSION = 1
|
||||
internal const val GRADLE_CACHE_VERSION = 2
|
||||
internal const val GRADLE_CACHE_VERSION_FILE_NAME = "gradle-format-version.txt"
|
||||
|
||||
internal fun gradleCacheVersion(dataRoot: File): CacheVersion =
|
||||
|
||||
Reference in New Issue
Block a user