在java中打印exception消息
有没有办法在Java中打印exception消息而没有例外?
当我尝试以下代码时:
try { // statements } catch (javax.script.ScriptException ex) { System.out.println(ex.getMessage()); }
输出是:
Invalid JavaScript code: sun.org.mozilla.javascript.internal.EvaluatorException: missing } after property list () in ; at line number 1
有没有办法打印消息没有exception信息,源和行号信息。 换句话说,我想在输出中打印的消息是:
missing } after property list
输出对我来说是正确的:
Invalid JavaScript code: sun.org.mozilla.javascript.internal.EvaluatorException: missing } after property list () in ; at line number 1
我认为Invalid Javascript code: ..
是exception消息的开始。
通常,堆栈跟踪不会返回消息:
try { throw new RuntimeException("hu?\ntrace-line1\ntrace-line2"); } catch (Exception e) { System.out.println(e.getMessage()); // prints "hu?" }
因此,您调用的代码可能会捕获exception并重新抛出ScriptException
。 在这种情况下,也许e.getCause().getMessage()
可以帮助你。
try { } catch (javax.script.ScriptException ex) { // System.out.println(ex.getMessage()); }