Как мне интерпретировать эту ошибку JVM?

У меня есть приложение 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 виду смещение байт-кода в классе? Как я могу отследить это до исходных строк в игре?

На самом деле, мне бы хотелось получить общее руководство по поиску этих дампов. Это тоже было бы фантастически.

Ответов (2)

Решение

Чтобы получить общее руководство, просмотрите эти две ссылки Устранение неполадок журнала фатальных ошибок и Ускоренный курс по анализу сбоев JVM

я тоже был сбит с толку, что могло означать "V + 158" ?? однако объяснение простое, "V" - это тип возвращаемого значения метода и является частью описания метода. (описание состоит из имени пакета, имени класса, имени метода, типов параметров, принимаемых методом, и типа возвращаемого значения) «V» означает «void».

+158 - это так называемый «индекс байт-кода» - вы были правы.