Substituir uma exceção verificada por uma exceção de tempo de execução?
Dado que eu basicamente quero eliminar o uso de exceção verificada e transformá-los em exceções de tempo de execução, eu normalmente estaria fazendo algo assim:
try {
file.read();
} catch (IOException e){
throw new RuntimeException(e);
}
Há várias desvantagens em fazer isso, mas o que mais me irrita é que minha exceção de tempo de execução conteria um stacktrace aninhado. Basicamente eu gostaria de re-lançar o "IOException" como um RuntimeException (ou "IORuntimeException") com a mensagem original e stacktrace, para que eu possa evitar o stacktrace aninhado inútil. O "fato" de que eu joguei a exceção em algum lugar no meio parece um ruído inútil para mim.
Isso é possível ? Existe alguma biblioteca que faz isso?