Catching Throwable
не рекомендуется по причинам, изложенным в разных сообщениях. Однако имеет ли смысл иметь основную структуру, как показано ниже? Если удаляемая строка удаляется, ошибки не регистрируются.
public static void main(String[] args) {
try {
launchMyApplication();
} catch (SomeCheckedException e) {
//recover if you can, log it if you can't
} catch (Exception e) {
//recover if you can (unlikely), log it if you can't
} catch (Throwable e) {
//Don't try to recover, but log it
logger.error("Oops: {}", e);
}
}