Я помню, у нас была сторонняя библиотека, которая в статическом инициализаторе класса искала свою нативную либу. Если не находила, то делала System.exit(). Нормально, да? Мы её использовали для некоторой функциональности, которая вообще мало кому нужна. В случае мисконфигурации мы не исключение получили, и всё остальные функции работали нормально. Нет, у нас молча завершался весь процесс бэкэнда!