diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/IdeResolveDependenciesTask.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/IdeResolveDependenciesTask.kt index 49c336ab278..ba5b034a843 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/IdeResolveDependenciesTask.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/ide/IdeResolveDependenciesTask.kt @@ -13,6 +13,7 @@ import org.gradle.api.tasks.TaskProvider import org.gradle.work.DisableCachingByDefault import org.jetbrains.kotlin.gradle.dsl.kotlinExtension import org.jetbrains.kotlin.gradle.idea.tcs.IdeaKotlinDependencyCoordinates +import org.jetbrains.kotlin.gradle.plugin.KotlinProjectSetupAction import org.jetbrains.kotlin.gradle.tasks.locateOrRegisterTask import org.jetbrains.kotlin.gradle.utils.appendLine import org.jetbrains.kotlin.gradle.utils.notCompatibleWithConfigurationCacheCompat @@ -20,6 +21,10 @@ import org.jetbrains.kotlin.tooling.core.Extras import java.io.File import java.lang.reflect.Type +internal val IdeResolveDependenciesTaskSetupAction = KotlinProjectSetupAction { + locateOrRegisterIdeResolveDependenciesTask() +} + internal fun Project.locateOrRegisterIdeResolveDependenciesTask(): TaskProvider { return locateOrRegisterTask("resolveIdeDependencies") { task -> task.description = "Debugging/Diagnosing task that will resolve dependencies for the IDE" diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/KotlinMultiplatformPlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/KotlinMultiplatformPlugin.kt index fd41b4a9589..6b953b302b9 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/KotlinMultiplatformPlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/KotlinMultiplatformPlugin.kt @@ -15,7 +15,6 @@ import org.jetbrains.kotlin.gradle.plugin.KotlinPluginLifecycle.Stage.AfterEvalu import org.jetbrains.kotlin.gradle.plugin.hierarchy.orNull import org.jetbrains.kotlin.gradle.plugin.hierarchy.setupDefaultKotlinHierarchy import org.jetbrains.kotlin.gradle.plugin.ide.kotlinIdeMultiplatformImport -import org.jetbrains.kotlin.gradle.plugin.ide.locateOrRegisterIdeResolveDependenciesTask import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinMultiplatformPlugin.Companion.sourceSetFreeCompilerArgsPropertyName import org.jetbrains.kotlin.gradle.plugin.mpp.internal.runDeprecationDiagnostics import org.jetbrains.kotlin.gradle.plugin.sources.DefaultLanguageSettingsBuilder @@ -70,7 +69,6 @@ class KotlinMultiplatformPlugin : Plugin { // Ensure that the instance is created and configured during apply project.kotlinIdeMultiplatformImport - project.locateOrRegisterIdeResolveDependenciesTask() } private fun exportProjectStructureMetadataForOtherBuilds( diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt index 0cbc18fe42e..59448cc53af 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/registerKotlinPluginExtensions.kt @@ -28,6 +28,7 @@ import org.jetbrains.kotlin.gradle.plugin.diagnostics.checkers.NoKotlinTargetsDe import org.jetbrains.kotlin.gradle.plugin.diagnostics.checkers.PreHmppDependenciesUsageChecker import org.jetbrains.kotlin.gradle.plugin.diagnostics.checkers.UnusedSourceSetsChecker import org.jetbrains.kotlin.gradle.plugin.diagnostics.checkers.WasmSourceSetsNotFoundChecker +import org.jetbrains.kotlin.gradle.plugin.ide.IdeResolveDependenciesTaskSetupAction import org.jetbrains.kotlin.gradle.plugin.mpp.apple.AddBuildListenerForXCodeSetupAction import org.jetbrains.kotlin.gradle.targets.js.npm.AddNpmDependencyExtensionProjectSetupAction import org.jetbrains.kotlin.gradle.targets.native.CreateFatFrameworksSetupAction @@ -44,6 +45,7 @@ internal fun Project.registerKotlinPluginExtensions() { register(project, KotlinToolingDiagnosticsSetupAction) if (isMultiplatform) { + register(project, IdeResolveDependenciesTaskSetupAction) register(project, CInteropCommonizedCInteropApiElementsConfigurationsSetupAction) register(project, AddBuildListenerForXCodeSetupAction) register(project, CreateFatFrameworksSetupAction)