Invalidate module source roots in create actual to fix exceptions
Related to KT-19586
This commit is contained in:
@@ -21,6 +21,7 @@ import org.jetbrains.jps.model.java.JavaSourceRootProperties
|
||||
import org.jetbrains.jps.model.module.JpsModuleSourceRootType
|
||||
import org.jetbrains.kotlin.config.KotlinSourceRootType
|
||||
import org.jetbrains.kotlin.idea.caches.PerModulePackageCacheService
|
||||
import org.jetbrains.kotlin.idea.roots.invalidateProjectRoots
|
||||
import org.jetbrains.kotlin.idea.util.rootManager
|
||||
import org.jetbrains.kotlin.idea.util.sourceRoot
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
@@ -103,6 +104,7 @@ private fun Module.getOrConfigureKotlinSourceRoots(): List<VirtualFile> {
|
||||
return runWriteAction {
|
||||
val rootDir = rootManager.contentRoots.firstOrNull()
|
||||
rootDir?.createChildDirectory(project, "kotlin")
|
||||
project.invalidateProjectRoots()
|
||||
getNonGeneratedKotlinSourceRoots()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
/*
|
||||
* Copyright 2010-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license
|
||||
* that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.idea.roots
|
||||
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.roots.ex.ProjectRootManagerEx
|
||||
import com.intellij.openapi.util.EmptyRunnable
|
||||
|
||||
fun Project.invalidateProjectRoots() {
|
||||
ProjectRootManagerEx.getInstanceEx(this).makeRootsChange(EmptyRunnable.INSTANCE, false, true)
|
||||
}
|
||||
+2
-2
@@ -40,7 +40,7 @@ import org.jetbrains.kotlin.idea.PluginStartupComponent;
|
||||
import org.jetbrains.kotlin.idea.core.script.settings.KotlinScriptingSettings;
|
||||
import org.jetbrains.kotlin.idea.facet.DescriptionListCellRenderer;
|
||||
import org.jetbrains.kotlin.idea.facet.KotlinFacet;
|
||||
import org.jetbrains.kotlin.idea.roots.ProjectRootUtilsKt;
|
||||
import org.jetbrains.kotlin.idea.roots.RootUtilsKt;
|
||||
import org.jetbrains.kotlin.idea.util.application.ApplicationUtilsKt;
|
||||
import org.jetbrains.kotlin.platform.IdePlatform;
|
||||
import org.jetbrains.kotlin.platform.IdePlatformKind;
|
||||
@@ -524,7 +524,7 @@ public class KotlinCompilerConfigurableTab implements SearchableConfigurable, Co
|
||||
new Function0<Object>() {
|
||||
@Override
|
||||
public Object invoke() {
|
||||
ProjectRootUtilsKt.invalidateProjectRoots(project);
|
||||
RootUtilsKt.invalidateProjectRoots(project);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,10 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.idea.roots
|
||||
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.roots.ModifiableRootModel
|
||||
import com.intellij.openapi.roots.ex.ProjectRootManagerEx
|
||||
import com.intellij.openapi.util.EmptyRunnable
|
||||
import org.jetbrains.jps.model.JpsElement
|
||||
import org.jetbrains.jps.model.ex.JpsElementBase
|
||||
import org.jetbrains.jps.model.java.JavaResourceRootType
|
||||
@@ -44,7 +41,3 @@ fun migrateNonJvmSourceFolders(modifiableRootModel: ModifiableRootModel) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun Project.invalidateProjectRoots() {
|
||||
ProjectRootManagerEx.getInstanceEx(this).makeRootsChange(EmptyRunnable.INSTANCE, false, true)
|
||||
}
|
||||
Reference in New Issue
Block a user