From e39de895a48489a24752f492b62045397bba0f02 Mon Sep 17 00:00:00 2001 From: Eugene Zhuravlev Date: Thu, 14 Apr 2016 10:20:38 +0200 Subject: [PATCH] fixing UndeclaredThrowableException on compilation cancel (IDEA-154699) --- .../src/org/jetbrains/jps/javac/JavacMain.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/jps/jps-builders/src/org/jetbrains/jps/javac/JavacMain.java b/jps/jps-builders/src/org/jetbrains/jps/javac/JavacMain.java index 840403e2d0a0..0b565436789a 100644 --- a/jps/jps-builders/src/org/jetbrains/jps/javac/JavacMain.java +++ b/jps/jps-builders/src/org/jetbrains/jps/javac/JavacMain.java @@ -197,7 +197,13 @@ public class JavacMain { return (StandardJavaFileManager)Proxy.newProxyInstance(fileManager.getClass().getClassLoader(), new Class[]{StandardJavaFileManager.class}, new InvocationHandler() { @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { - return method.invoke(fileManager.getApiCallHandler(method), args); + try { + return method.invoke(fileManager.getApiCallHandler(method), args); + } + catch (InvocationTargetException e) { + final Throwable cause = e.getCause(); + throw cause != null? cause : e; + } } }); }