diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CommonizerTasks.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CommonizerTasks.kt index 84d085b44d2..9317770c0af 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CommonizerTasks.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/targets/native/internal/CommonizerTasks.kt @@ -106,6 +106,7 @@ internal suspend fun Project.copyCommonizeCInteropForIdeTask(): TaskProvider - get() = project.future { project.commonizeCInteropTask() }.getOrThrow() ?: throw IllegalStateException("Missing commonizeCInteropTask") +) : AbstractCInteropCommonizerTask() { @get:IgnoreEmptyDirectories @get:InputFiles diff --git a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/unitTests/CommonizerTaskTests.kt b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/unitTests/CommonizerTaskTests.kt index c2bb76986de..f49347f3d3d 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/unitTests/CommonizerTaskTests.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/functionalTest/kotlin/org/jetbrains/kotlin/gradle/unitTests/CommonizerTaskTests.kt @@ -11,6 +11,7 @@ import org.gradle.api.internal.project.ProjectInternal import org.gradle.testfixtures.ProjectBuilder import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinNativeCompilation import org.jetbrains.kotlin.gradle.targets.native.internal.cInteropCommonizationEnabled +import org.jetbrains.kotlin.gradle.targets.native.internal.copyCommonizeCInteropForIdeTask import org.jetbrains.kotlin.gradle.util.* import kotlin.test.* @@ -167,4 +168,14 @@ class CommonizerTaskTests { assertFalse(subproject.cInteropCommonizationEnabled()) } } + + @Test + fun `test copyCommonizeCInteropForIdeTask creation - doesn't fail`() { + val project = ProjectBuilder.builder().build() + project.applyMultiplatformPlugin() + project.enableCInteropCommonization(true) + project.runLifecycleAwareTest { + project.copyCommonizeCInteropForIdeTask()?.get()?.cInteropCommonizerTaskOutputDirectories + } + } }