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.
This commit is contained in:
Aurimas
2022-07-19 10:14:53 -07:00
committed by teamcity
parent 26149be44a
commit 8921270f36
@@ -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<KotlinProjectStructureMetadata>
@@ -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"
internal const val MULTIPLATFORM_PROJECT_METADATA_JSON_FILE_NAME = "kotlin-project-structure-metadata.json"