public static void main(final String[] args) throws IOException, FileNotFoundException { try { mainHelper(args); } catch (Daikon.TerminationMessage e) { String message = e.getMessage(); if (Daikon.dkconfig_show_stack_trace) e.printStackTrace(); if (message != null) { System.err.println(message); System.exit(1); } System.exit(0); } // Any exception other than Daikon.TerminationMessage gets propagated. // This simplifies debugging by showing the stack trace. }