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