【发布时间】:2014-09-13 03:47:20
【问题描述】:
我目前正在处理我继承的一些代码。执行时,控制台会记录很多异常,其中一个异常如下所示:
["bg-thread-0" Id=28 RUNNABLE
at java.util.zip.ZipFile.read(Native Method)
at java.util.zip.ZipFile.access$1400(ZipFile.java:56)
at java.util.zip.ZipFile$ZipFileInputStream.read(ZipFile.java:677)
- locked java.util.zip.ZipFile@67369c20
at java.util.zip.ZipFile$ZipFileInflaterInputStream.fill(ZipFile.java:413)
at java.util.zip.InflaterInputStream.read(InflaterInputStream.java:158)
at org.eclipse.osgi.baseadaptor.bundlefile.BundleEntry.getBytes(BundleEntry.java:102)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:511)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:455)
...
Number of locked synchronizers = 1
- java.util.concurrent.ThreadPoolExecutor$Worker@66e5b079
]
我正在使用Logback 进行日志记录。现在我不知道该异常是在哪里生成或记录的,因为该信息已被... 截断。
我也不知道是什么意思。我猜这与死锁有关(因为Number of locked synchronizers = 1),但我不确定。
所以我的问题是:如何在这里进行?该异常是什么意思,如何调试和找到它以及如何解决它?我真的不知道,并会感谢任何提示。谢谢!
【问题讨论】:
-
这看起来更像是一个线程转储而不是常规的堆栈跟踪。当某些东西向 JVM 进程发送 SIGQUIT 信号时,你会得到这些,
-
@StephenC:如果是这样,线程是通过什么机制被转储的?如何拦截/调试/分析找出原因?
标签: java debugging exception logging