0
Фон у меня есть несколько исключений Я хочу попробовать. могут ли они быть динамически заданы?Как поймать динамически определенное исключение
def retryOn(e:Class[_])(n: Int)(block:() => Unit):Unit = {
try {
block()
} catch {
case e1: Throwable =>
if (n > 1 && e1.isInstanceOf[e.type]) {
retryOn(e)(n - 1)(block)
}
else throw e1
}
}
от того, что пытались выше, это не работает, потому что выброшен e1 не имеет никакого debug
или введите информацию на всех.
y не использовать Try блок вместо try {} catch {}, он содержит все, что вам нужно – Aamir
вы можете регистрировать или отлаживать e1, прежде чем реконструировать его;) –