diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/kotlinCompilations.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/kotlinCompilations.kt index 609c60cbd1d..fa401cd7940 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/kotlinCompilations.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/kotlinCompilations.kt @@ -26,6 +26,7 @@ import org.jetbrains.kotlin.gradle.plugin.sources.getSourceSetHierarchy import org.jetbrains.kotlin.gradle.tasks.AbstractKotlinCompile import org.jetbrains.kotlin.gradle.tasks.locateTask import org.jetbrains.kotlin.gradle.utils.addExtendsFromRelation +import org.jetbrains.kotlin.gradle.utils.archivePathCompatible import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName import java.io.File import java.util.* @@ -211,7 +212,7 @@ abstract class AbstractKotlinCompilation( // that depends on this module's production part, include the main artifact in the friend artifacts, lazily: files( provider { - listOfNotNull(tasks.withType(AbstractArchiveTask::class.java).findByName(target.artifactsTaskName)?.archiveFile) + listOfNotNull(tasks.withType(AbstractArchiveTask::class.java).findByName(target.artifactsTaskName)?.archivePathCompatible) } ) } else files() diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt index b3ee5ffbe12..ad91a0e30f2 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/tasks/Tasks.kt @@ -548,7 +548,10 @@ open class Kotlin2JsCompile : AbstractKotlinCompile(), Ko internal val friendDependencies: List get() { val filter = libraryFilter - return friendPaths.filter { filter(File(it)) } + return friendPaths.filter { + val file = File(it) + file.exists() && filter(file) + } } @Suppress("unused") @@ -605,7 +608,7 @@ open class Kotlin2JsCompile : AbstractKotlinCompile(), Ko .filter { it.exists() && libraryFilter(it) } .map { it.canonicalPath } - args.libraries = (dependencies + friendDependencies).distinct().let { + args.libraries = dependencies.distinct().let { if (it.isNotEmpty()) it.joinToString(File.pathSeparator) else null