From ba810b80985c5ab6f2f2a0fa689fa58ecb61206e Mon Sep 17 00:00:00 2001 From: Alexey Tsvetkov Date: Fri, 27 Sep 2019 19:30:48 +0300 Subject: [PATCH] Ensure all output roots exist after Kotlin is compiled in JPS Original commit: 6c902796944dd62c4ad6ef2a1fa70a90aaba1905 --- .../org/jetbrains/kotlin/jps/build/KotlinBuilder.kt | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt index 6e5a686b00f..b8985d3405a 100644 --- a/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt +++ b/jps/jps-plugin/src/org/jetbrains/kotlin/jps/build/KotlinBuilder.kt @@ -261,6 +261,17 @@ class KotlinBuilder : ModuleLevelBuilder(BuilderCategory.SOURCE_PROCESSOR) { if (chunk.isDummy(context)) return + // Temporary workaround for KT-33808 + val kotlinContext = ensureKotlinContextInitialized(context) + for (target in chunk.targets) { + if (kotlinContext.hasKotlinMarker[target] != true) continue + + val outputRoots = target.getOutputRoots(context) + if (outputRoots.size > 1) { + outputRoots.forEach { it.mkdirs() } + } + } + LOG.debug("------------------------------------------") }