From 9fe0681fb62de7aa953761eba6c56e58f6e707ef Mon Sep 17 00:00:00 2001 From: Alexey Sedunov Date: Mon, 16 Oct 2017 19:35:44 +0300 Subject: [PATCH] MPP: Fix implementing module search in Gradle runner --- idea/src/org/jetbrains/kotlin/idea/facet/facetUtils.kt | 8 ++++++++ .../kotlin/idea/run/KotlinRunConfigurationProducer.kt | 5 ++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/facet/facetUtils.kt b/idea/src/org/jetbrains/kotlin/idea/facet/facetUtils.kt index 739cd2e3f10..0ddf5e72675 100644 --- a/idea/src/org/jetbrains/kotlin/idea/facet/facetUtils.kt +++ b/idea/src/org/jetbrains/kotlin/idea/facet/facetUtils.kt @@ -130,6 +130,14 @@ private fun Module.findImplementingModules(modelsProvider: IdeModifiableModelsPr } } +val Module.implementingModules: List + get() = cached(CachedValueProvider { + CachedValueProvider.Result( + findImplementingModules(IdeModifiableModelsProviderImpl(project)), + ProjectRootModificationTracker.getInstance(project) + ) + }) + private fun Module.getModuleInfo(baseModuleSourceInfo: ModuleSourceInfo): ModuleSourceInfo? = when (baseModuleSourceInfo) { is ModuleProductionSourceInfo -> productionSourceInfo() diff --git a/idea/src/org/jetbrains/kotlin/idea/run/KotlinRunConfigurationProducer.kt b/idea/src/org/jetbrains/kotlin/idea/run/KotlinRunConfigurationProducer.kt index 3610434293a..10db24c6f94 100644 --- a/idea/src/org/jetbrains/kotlin/idea/run/KotlinRunConfigurationProducer.kt +++ b/idea/src/org/jetbrains/kotlin/idea/run/KotlinRunConfigurationProducer.kt @@ -20,7 +20,6 @@ import com.intellij.execution.Location import com.intellij.execution.actions.ConfigurationContext import com.intellij.execution.actions.RunConfigurationProducer import com.intellij.openapi.module.Module -import com.intellij.openapi.module.ModuleManager import com.intellij.openapi.project.DumbService import com.intellij.openapi.util.Ref import com.intellij.psi.PsiElement @@ -32,6 +31,7 @@ import org.jetbrains.kotlin.descriptors.FunctionDescriptor import org.jetbrains.kotlin.fileClasses.javaFileFacadeFqName import org.jetbrains.kotlin.idea.MainFunctionDetector import org.jetbrains.kotlin.idea.caches.resolve.getResolutionFacade +import org.jetbrains.kotlin.idea.facet.implementingModules import org.jetbrains.kotlin.idea.project.TargetPlatformDetector import org.jetbrains.kotlin.idea.project.targetPlatform import org.jetbrains.kotlin.idea.util.ProjectRootsUtil @@ -129,6 +129,5 @@ class KotlinRunConfigurationProducer : RunConfigurationProducer