【发布时间】:2019-09-18 20:58:13
【问题描述】:
我正在尝试捕获异常 (MultipleCompilationErrorsException),但我很难做到(实际上我正在尝试捕获所有类型的错误和异常,如果这很重要的话)。这是我尝试过的:
try {
some erroneous crap here
println("wtf! A")
} catch(Throwable all) {
println("caught!")
}
这行得通。 caught! 显示为输出。
try {
try some erroneous crap here
println("wtf! A")
} catch(Throwable all) {
println("caught!")
}
此代码错误:
org.codehaus.groovy.control.MultipleCompilationErrorsException: 启动失败:/tmp/g.groovy:2:期待“{”,找到“一些”@行 2,第 9 栏。 在这里尝试一些废话 ^
1 个错误
所以现在我有了异常名称,我尝试了:
try {
try some erroneous crap here
println("wtf! A")
} catch(MultipleCompilationErrorsException e) {
println("caught!")
}
这个错误和上面的完全一样:
org.codehaus.groovy.control.MultipleCompilationErrorsException: 启动失败:/tmp/g.groovy:2:期待“{”,找到“一些”@行 2,第 9 栏。 在这里尝试一些废话 ^
1 个错误
谁能告诉我我错过了什么?如何捕获这样的错误/异常?
【问题讨论】:
-
Try-catch 仅捕获运行时错误。编译错误发生在运行之前。因此,除非您将代码放入任何动态评估中,例如
Eval.me( "try some erroneous crap here" ),否则您无法捕获此错误
标签: groovy