你已经看到了它们,它只是荒谬的方式Java(和默认的Logback)默认打印异常.这个堆栈跟踪:
Exception in thread "main" java.lang.NoClassDefFoundError: aa/bb/DD
at SOMEWHERE(unknown source)
Caused by: java.lang.ClassNotFoundException: aaa.bbb.CC
at SOMEWHER(unknown source)
... 13 more
实际上意味着以下程序流程(从下到上):
Caused by: java.lang.ClassNotFoundException: aaa.bbb.CC
at SOMEWHER(unknown source)
Exception in thread "main" java.lang.NoClassDefFoundError: aa/bb/DD
at SOMEWHERE(unknown source)
……还有13个(在Logback中省略了N个常用帧)只意味着之前已经打印过这些异常.在Logback中,您可以重新构建堆栈跟踪以避免重复并始终按正确顺序打印堆栈行,请参阅my blog.