diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.kt index e2c6eff88c3..03e34916ebe 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinToJVMBytecodeCompiler.kt @@ -17,6 +17,7 @@ package org.jetbrains.kotlin.cli.jvm.compiler import com.intellij.openapi.project.Project +import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.util.io.JarUtil import com.intellij.openapi.vfs.VfsUtilCore import com.intellij.openapi.vfs.VirtualFile @@ -264,7 +265,9 @@ object KotlinToJVMBytecodeCompiler { } // Clear package caches (see KotlinJavaPsiFacade) - (PsiManager.getInstance(environment.project).modificationTracker as? PsiModificationTrackerImpl)?.incCounter() + ApplicationManager.getApplication().runWriteAction { + (PsiManager.getInstance(environment.project).modificationTracker as? PsiModificationTrackerImpl)?.incCounter() + } // Clear all diagnostic messages configuration[CLIConfigurationKeys.MESSAGE_COLLECTOR_KEY]?.clear() diff --git a/plugins/annotation-processing/src/org/jetbrains/kotlin/annotation/processing/AnnotationProcessingExtension.kt b/plugins/annotation-processing/src/org/jetbrains/kotlin/annotation/processing/AnnotationProcessingExtension.kt index dbca20b0801..11dc198d540 100755 --- a/plugins/annotation-processing/src/org/jetbrains/kotlin/annotation/processing/AnnotationProcessingExtension.kt +++ b/plugins/annotation-processing/src/org/jetbrains/kotlin/annotation/processing/AnnotationProcessingExtension.kt @@ -16,6 +16,7 @@ package org.jetbrains.kotlin.annotation +import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.project.Project import com.intellij.openapi.vfs.StandardFileSystems import com.intellij.psi.JavaPsiFacade @@ -291,7 +292,9 @@ abstract class AbstractAnnotationProcessingExtension( } // Update the platform caches - (psiManager().modificationTracker as? PsiModificationTrackerImpl)?.incCounter() + ApplicationManager.getApplication().runWriteAction { + (psiManager().modificationTracker as? PsiModificationTrackerImpl)?.incCounter() + } // Find generated files val localFileSystem = StandardFileSystems.local()