From 8921270f366a5878e98d46cc327994c09ce26197 Mon Sep 17 00:00:00 2001 From: Aurimas Date: Tue, 19 Jul 2022 10:14:53 -0700 Subject: [PATCH] Make GenerateProjectStructureMetadata configuration cache compatible GenerateProjectStructureMetadata was accessing project object through a lazy getter of resultFile. Since calculating this value is not expensive, do it without it being lazy, which makes it configuration cache compatible. --- .../plugin/mpp/GenerateProjectStructureMetadata.kt | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/GenerateProjectStructureMetadata.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/GenerateProjectStructureMetadata.kt index df8a83e0d94..842409a59d6 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/GenerateProjectStructureMetadata.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/GenerateProjectStructureMetadata.kt @@ -15,10 +15,6 @@ import java.io.File open class GenerateProjectStructureMetadata : DefaultTask() { - init { - notCompatibleWithConfigurationCache("Task $name does not support Gradle Configuration Cache. Check KT-49933 for more info") - } - @get:Internal internal lateinit var lazyKotlinProjectStructureMetadata: Lazy @@ -27,8 +23,7 @@ open class GenerateProjectStructureMetadata : DefaultTask() { get() = lazyKotlinProjectStructureMetadata.value @get:OutputFile - val resultFile: File - get() = project.buildDir.resolve("kotlinProjectStructureMetadata/$MULTIPLATFORM_PROJECT_METADATA_JSON_FILE_NAME") + val resultFile: File = project.buildDir.resolve("kotlinProjectStructureMetadata/$MULTIPLATFORM_PROJECT_METADATA_JSON_FILE_NAME") @TaskAction fun generateMetadataXml() { @@ -39,4 +34,4 @@ open class GenerateProjectStructureMetadata : DefaultTask() { } internal const val MULTIPLATFORM_PROJECT_METADATA_FILE_NAME = "kotlin-project-structure-metadata.xml" -internal const val MULTIPLATFORM_PROJECT_METADATA_JSON_FILE_NAME = "kotlin-project-structure-metadata.json" \ No newline at end of file +internal const val MULTIPLATFORM_PROJECT_METADATA_JSON_FILE_NAME = "kotlin-project-structure-metadata.json"