diff --git a/jps/jps-builders/src/org/jetbrains/jps/incremental/java/JavaBuilder.java b/jps/jps-builders/src/org/jetbrains/jps/incremental/java/JavaBuilder.java index 90f0921e52c9..3595aa26927a 100644 --- a/jps/jps-builders/src/org/jetbrains/jps/incremental/java/JavaBuilder.java +++ b/jps/jps-builders/src/org/jetbrains/jps/incremental/java/JavaBuilder.java @@ -391,7 +391,7 @@ public class JavaBuilder extends ModuleLevelBuilder { return JavaCompilers.ECLIPSE_ID.equalsIgnoreCase(compilerId) || JavaCompilers.ECLIPSE_EMBEDDED_ID.equalsIgnoreCase(compilerId); } - private void submitAsyncTask(CompileContext context, final Runnable taskRunnable) { + private void submitAsyncTask(final CompileContext context, final Runnable taskRunnable) { final TasksCounter counter = COUNTER_KEY.get(context); assert counter != null; @@ -402,6 +402,9 @@ public class JavaBuilder extends ModuleLevelBuilder { try { taskRunnable.run(); } + catch (Throwable e) { + context.processMessage(new CompilerMessage(BUILDER_NAME, e)); + } finally { counter.decTaskCounter(); }