From 2f39a6567989574a567dbb68f099dabeadb4e36c Mon Sep 17 00:00:00 2001 From: Alexander Likhachev Date: Mon, 21 Feb 2022 18:36:39 +0300 Subject: [PATCH] [Build] Add workarounds for https://github.com/gradle/gradle/issues/17936 #KT-44611 In Progress --- libraries/kotlin.test/js/build.gradle | 5 ++++- libraries/stdlib/js-v1/build.gradle | 5 ++++- prepare/compiler-embeddable/build.gradle.kts | 11 +++++++++-- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/libraries/kotlin.test/js/build.gradle b/libraries/kotlin.test/js/build.gradle index 087852dd90f..06745cc16aa 100644 --- a/libraries/kotlin.test/js/build.gradle +++ b/libraries/kotlin.test/js/build.gradle @@ -56,7 +56,10 @@ task libraryJarWithIr(type: Zip, dependsOn: libraryJarWithoutIr) { duplicatesStrategy DuplicatesStrategy.FAIL - from zipTree(libraryJarWithoutIr.archiveFile) + // workaround for https://github.com/gradle/gradle/issues/17936 + def archiveOperations = services.get(ArchiveOperations) + RegularFile libraryJarWithoutIrFile = libraryJarWithoutIr.archiveFile.get() + from { archiveOperations.zipTree(libraryJarWithoutIrFile) } dependsOn(":kotlin-test:kotlin-test-js-ir:compileKotlinJs") from { diff --git a/libraries/stdlib/js-v1/build.gradle b/libraries/stdlib/js-v1/build.gradle index 9b7a3b70bf0..08c9979a541 100644 --- a/libraries/stdlib/js-v1/build.gradle +++ b/libraries/stdlib/js-v1/build.gradle @@ -276,7 +276,10 @@ task libraryJarWithIr(type: Zip, dependsOn: libraryJarWithoutIr) { duplicatesStrategy DuplicatesStrategy.FAIL - from zipTree(libraryJarWithoutIr.archiveFile) + // workaround for https://github.com/gradle/gradle/issues/17936 + def archiveOperations = services.get(ArchiveOperations) + RegularFile libraryJarWithoutIrFile = libraryJarWithoutIr.archiveFile.get() + from { archiveOperations.zipTree(libraryJarWithoutIrFile) } dependsOn(":kotlin-stdlib-js-ir:compileKotlinJs") from { def irKlib = tasks.getByPath(":kotlin-stdlib-js-ir:compileKotlinJs") diff --git a/prepare/compiler-embeddable/build.gradle.kts b/prepare/compiler-embeddable/build.gradle.kts index 49514237e09..e97dfa10107 100644 --- a/prepare/compiler-embeddable/build.gradle.kts +++ b/prepare/compiler-embeddable/build.gradle.kts @@ -1,6 +1,7 @@ import java.util.stream.Collectors import com.github.jengelman.gradle.plugins.shadow.transformers.Transformer import com.github.jengelman.gradle.plugins.shadow.transformers.TransformerContext +import org.gradle.kotlin.dsl.support.serviceOf import shadow.org.apache.tools.zip.ZipEntry import shadow.org.apache.tools.zip.ZipOutputStream @@ -56,13 +57,19 @@ val runtimeJar = runtimeJar(embeddableCompiler()) { sourcesJar { val compilerTask = project(":kotlin-compiler").tasks.named("sourcesJar") dependsOn(compilerTask) - from(compilerTask.map { zipTree(it.archiveFile) }) + // workaround for https://github.com/gradle/gradle/issues/17936 + val archiveOperations = serviceOf() + val sourcesJar by lazy { compilerTask.get().archiveFile.get() } + from({ archiveOperations.zipTree(sourcesJar) }) } javadocJar { val compilerTask = project(":kotlin-compiler").tasks.named("javadocJar") dependsOn(compilerTask) - from(compilerTask.map { zipTree(it.archiveFile) }) + // workaround for https://github.com/gradle/gradle/issues/17936 + val archiveOperations = serviceOf() + val javadocJarFile by lazy { compilerTask.get().archiveFile.get() } + from({ archiveOperations.zipTree(javadocJarFile) }) } projectTest {