我有一个Java应用程序,会利用某些本机代码,它的断裂。我想了解的其中的它的断层,但我不知道如何读hs_err_pid转储文件:

Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x256cbc]
V  [libjvm.so+0x25df69]
V  [libjvm.so+0x25dbac]
V  [libjvm.so+0x25e8c8]
V  [libjvm.so+0x25e49f]
V  [libjvm.so+0x16fa3e]
j  br.com.cip.spb.single.SPBRequestApplicationController.processJob(Lcom/planet/core360/docgen/ProcessingEnvironment;Lcom/planet/core360/dsmv2/processing/ApplicationDataJob;)V+158
j  com.planet.core360.cgen.CgenProcessor.processJob(Ljava/lang/String;Lcom/planet/core360/docgen/ProcessingEnvironment;Lcom/planet/core360/dsmv2/processing/ApplicationDataJob;)V+108
j  com.planet.core360.cgen.CgenProcessor.processJob(Ljava/lang/String;Lcom/planet/core360/docgen/ProcessingEnvironment;Lcom/planet/core360/dsmv2/processing/ScheduledJob;)V+7
v  ~StubRoutines::call_stub
V  [libjvm.so+0x17af0c]
V  [libjvm.so+0x28b9d8]
V  [libjvm.so+0x17ad3f]
V  [libjvm.so+0x1a58a3]
V  [libjvm.so+0x18bc24]
C  [cgen+0xa6d6]
C  [cgen+0xae1e]  cgen_process_job+0x336
C  [cgen+0x10442]
C  [cgen+0x7714]
C  [cgen+0x38216]
C  [cgen+0x3a29d]
C  [cgen+0x37e3c]
C  [cgen+0x7558]
C  [libc.so.6+0x166e5]  __libc_start_main+0xe5

基本上,什么是“J”架指向?被V+158指 字节码在类偏移?我怎样才能从这个追溯源头 在播放线?

其实,我很乐意的一般指导所著的Grokking这些转储。那会是非常美妙的,太

有帮助吗?

解决方案

有关的一般指导看看这两个环节致命错误登录故障排除崩溃上JVM崩溃分析当然

其他提示

我糊涂太,有什么能 “V + 158” 意味着?? 然而解释很简单,“V”是方法返回类型和方法是说明书的一部分。 (描述是由包名,类名,方法名的,采取的方法PARAM类型和返回类型)“V”表示“无效”。

+158就是所谓的 “字节码指数” - 你是对的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top