Teniendo en cuenta que, básicamente, quiero eliminar el uso de excepción comprobada y transformarlos tiempos de ejecución excepciones, que normalmente estaría haciendo algo como esto:¿Reemplazar una excepción marcada con una excepción de tiempo de ejecución?
try {
file.read();
} catch (IOException e){
throw new RuntimeException(e);
}
Hay varias desventajas a hacer esto, pero el que me la irrita la mayoría es que mi excepción de tiempo de ejecución contendría una stacktrace anidada. Básicamente me gustaría volver a lanzar la "IOException" como una RuntimeException (o "IORuntimeException") con el mensaje original y stacktrace, por lo que puedo evitar el inútil stack-stack anidado. El "hecho" de que he vuelto a lanzar la excepción en algún lugar en el medio me parece un ruido inútil.
¿Esto es posible? ¿Hay alguna biblioteca que hace esto?
¿Es [este] (http://robaustin.wikidot.com/rethrow-exceptions) útil? –
Si le molestan las stacktraces anidadas, odiará la mayoría de los marcos y bibliotecas, que tienden a usarlos extensivamente. Me acostumbraría a eso si fuera tú. – artbristol
@KazekageGaara, buena persona. Yo habría votado que si lo publicas como respuesta. – missingfaktor