获得了java进程的线程转储总是崩溃 - 症状是应用程序存在而没有任何警告或错误。 在java应用程序启动时进行了线程转储。 任何人都可以帮助找到任何潜在的原因吗?感谢
Full thread dump Java HotSpot(TM) 64-Bit Server VM (1.5.0_10-b03 mixed mode):
"Low Memory Detector" daemon prio=10 tid=0x0000000100383cd0 nid=0x19 runnable [0x0000000000000000..0x0000000000000000]
"CompilerThread1" daemon prio=10 tid=0x0000000100382c60 nid=0x18 waiting on condition [0x0000000000000000..0xffffffff298fdcf8]
"CompilerThread0" daemon prio=10 tid=0x0000000100380440 nid=0x17 waiting on condition [0x0000000000000000..0xffffffff29afdf18]
"AdapterThread" daemon prio=10 tid=0x000000010037f570 nid=0x16 waiting on condition [0x0000000000000000..0x0000000000000000]
"Signal Dispatcher" daemon prio=10 tid=0x000000010037e560 nid=0x15 waiting on condition [0x0000000000000000..0x0000000000000000]
"Finalizer" daemon prio=10 tid=0x0000000100367820 nid=0x14 in Object.wait() [0xffffffff2a0ff000..0xffffffff2a0ff628]
at java.lang.Object.wait(Native Method)
- waiting on <0xffffffff5c400ad0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
- locked <0xffffffff5c400ad0> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
"Reference Handler" daemon prio=10 tid=0x0000000100366fb0 nid=0x13 in Object.wait() [0xffffffff2a2ff000..0xffffffff2a2ff7a8]
at java.lang.Object.wait(Native Method)
- waiting on <0xffffffff5c400950> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:474)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
- locked <0xffffffff5c400950> (a java.lang.ref.Reference$Lock)
"main" prio=10 tid=0x0000000100121cd0 nid=0x1 runnable [0xffffffff7fff2000..0xffffffff7fff56f0]
at org.apache.xerces.impl.dtd.XMLDTDProcessor.attributeDecl(Unknown Source)
at org.apache.xerces.impl.XMLDTDScannerImpl.scanAttlistDecl(Unknown Source)
at org.apache.xerces.impl.XMLDTDScannerImpl.scanDecls(Unknown Source)
at org.apache.xerces.impl.XMLDTDScannerImpl.scanDTDExternalSubset(Unknown Source)
at org.apache.xerces.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:146)
at org.apache.log4j.xml.DOMConfigurator$2.parse(DOMConfigurator.java:612)
at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:711)
at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:618)
at org.apache.log4j.helpers.OptionConverter.selectAndConfigure(OptionConverter.java:468)
at org.apache.log4j.LogManager.<clinit>(LogManager.java:122)
at org.apache.log4j.Logger.getLogger(Logger.java:117)
at com.lehman.cats.common.mismarketsharereport.history.MarketShareHistoricalLoader.<clinit>(MarketShareHistoricalLoader.java:43)
"VM Thread" prio=10 tid=0x0000000100363240 nid=0x12 runnable
"GC task thread#0 (ParallelGC)" prio=10 tid=0x0000000100122d00 nid=0x2 runnable
"GC task thread#1 (ParallelGC)" prio=10 tid=0x00000001001a7440 nid=0x3 runnable
"GC task thread#2 (ParallelGC)" prio=10 tid=0x00000001001a7f40 nid=0x4 runnable
"GC task thread#3 (ParallelGC)" prio=10 tid=0x00000001001a8a40 nid=0x5 runnable
"GC task thread#4 (ParallelGC)" prio=10 tid=0x00000001001a9540 nid=0x6 runnable
"GC task thread#5 (ParallelGC)" prio=10 tid=0x00000001001aa040 nid=0x7 runnable
"GC task thread#6 (ParallelGC)" prio=10 tid=0x00000001001aab40 nid=0x8 runnable
"GC task thread#7 (ParallelGC)" prio=10 tid=0x00000001001ab660 nid=0x9 runnable
"GC task thread#8 (ParallelGC)" prio=10 tid=0x00000001001ac160 nid=0xa runnable
"GC task thread#9 (ParallelGC)" prio=10 tid=0x00000001001acc60 nid=0xb runnable
"GC task thread#10 (ParallelGC)" prio=10 tid=0x00000001001ad760 nid=0xc runnable
"GC task thread#11 (ParallelGC)" prio=10 tid=0x00000001001ae260 nid=0xd runnable
"GC task thread#12 (ParallelGC)" prio=10 tid=0x00000001001aed60 nid=0xe runnable
"GC task thread#13 (ParallelGC)" prio=10 tid=0x00000001001af860 nid=0xf runnable
"GC task thread#14 (ParallelGC)" prio=10 tid=0x00000001001b0360 nid=0x10 runnable
"GC task thread#15 (ParallelGC)" prio=10 tid=0x00000001001b0e60 nid=0x11 runnable
"VM Periodic Task Thread" prio=10 tid=0x0000000100198170 nid=0x1a waiting on condition
答案 0 :(得分:0)
似乎MarketShareHistoricalLoader.java:43行导致此问题。似乎XMLDTDLoader加载器在为输入源构建语法时失败了。您可能需要找到DTD禁用等替代品,以下是understanding java thread dump 和disable DTD validaton 的链接
答案 1 :(得分:0)
您可能错误配置了log4j记录器。