diff --git a/jps/jps-builders/src/org/jetbrains/jps/incremental/CompileContext.java b/jps/jps-builders/src/org/jetbrains/jps/incremental/CompileContext.java index e39512e334f1..b2b4b95ac98e 100644 --- a/jps/jps-builders/src/org/jetbrains/jps/incremental/CompileContext.java +++ b/jps/jps-builders/src/org/jetbrains/jps/incremental/CompileContext.java @@ -268,6 +268,10 @@ public class CompileContext extends UserDataHolderBase implements MessageHandler myDelegateMessageHandler.processMessage(msg); } + public boolean errorsDetected() { + return myErrorsFound; + } + public void processFilesToRecompile(ModuleChunk chunk, FileProcessor processor) throws IOException { for (Module module : chunk.getModules()) { myFsState.processFilesToRecompile(this, module, processor); diff --git a/jps/jps-builders/src/org/jetbrains/jps/incremental/ModuleLevelBuilder.java b/jps/jps-builders/src/org/jetbrains/jps/incremental/ModuleLevelBuilder.java index 099eb993c267..d503e83bff8e 100644 --- a/jps/jps-builders/src/org/jetbrains/jps/incremental/ModuleLevelBuilder.java +++ b/jps/jps-builders/src/org/jetbrains/jps/incremental/ModuleLevelBuilder.java @@ -56,6 +56,9 @@ public abstract class ModuleLevelBuilder extends Builder { * @throws Exception */ public final boolean updateMappings(CompileContext context, final Mappings delta, ModuleChunk chunk, Collection filesToCompile, Collection successfullyCompiled) throws IOException { + if (context.errorsDetected()) { + return false; + } try { boolean additionalPassRequired = false;