Discarding an exception after calling printStackTrace should usually be
avoided.
try {
// ...
} catch (IOException e) {
logger.log(INFO, "something has gone terribly wrong", e);
}try {
// ...
} catch (IOException e) {
throw new UncheckedIOException(e); // New in Java 8
}try {
// ...
} catch (IOException e) {
e.printStackTrace();
}