簡體   English   中英

Java核心轉儲時我該怎么辦?

[英]what should I do when Java core dumps?

這是我第一次遇到 Java 的這種情況。

Java 只是核心轉儲,出現以下錯誤:

#
# A fatal error has been detected by the Java Runtime Environment:
#
[thread 140213457409792 also had an error]#  Internal Error (safepoint.cpp:300), pid=4327
, tid=140213211031296
#  guarantee(PageArmed == 0) failed: invariant
#
# JRE version: 6.0_24-b24
# Java VM: OpenJDK 64-Bit Server VM (20.0-b12 mixed mode linux-amd64 compressed oops)
# Derivative: IcedTea6 1.11.4
# Distribution: Ubuntu 12.04 LTS, package 6b24-1.11.4-1ubuntu0.12.04.1
# An error report file with more information is saved as:
# /tmp/hs_err_pid4327.log
#
# If you would like to submit a bug report, please include
# instructions how to reproduce the bug and visit:
#   https://bugs.launchpad.net/ubuntu/+source/openjdk-6/

當我嘗試在 mac os 上運行它時,它的核心轉儲在同一個地方(JRE 必須不同)......所以它必須與代碼相關。 我不知道如何調試它,這也不例外,那里指定的日志文件沒有給我太多信息。 任何想法我可以做些什么來找到錯誤?

/tmp/hs_err_pid4327.log 文件應包含內核發生位置的堆棧跟蹤。 除非您進行 JNI 調用,否則它可能是 Java 錯誤。

核心轉儲告訴你應該做什么......

如果您想提交錯誤報告,請包含如何重現錯誤的說明並訪問: https : //bugs.launchpad.net/ubuntu/+source/openjdk-6/

快速瀏覽讓我覺得這已經被報道了。

該錯誤本身可能不在您的代碼中。 這很可能是環境問題 - 可能是 JVM 錯誤,也可能是某些異常情況,最有可能是兩者兼有 - 在奇怪的情況下很少發生的錯誤。

谷歌搜索消息中的關鍵元素(例如“safepoint.cpp:100”),查看其他報告,並尋找您的共同點或可能適用的解決方法。 在這種情況下,一組報告表明繁重的多線程可能會導致該問題。

檢查您的應用程序目錄中是否有 hprof 文件。 (可選)您可以隨意轉儲使用

jmap -dump:file=<file_name> <pid>

然后使用 MAT http://www.eclipse.org/mat/分析轉儲

您還可以考慮此處引用的其他工具:

分析java core dump的工具

參數。java:6:錯誤:';' 期望我的方法(“利亞姆”); ^ 參數.java:7: 錯誤: ';' 期望我的方法(“珍妮”); ^ 參數.java:8: 錯誤: ';' 期望我的方法(“Anja”); ^ 參數。java:9:錯誤:解析時到達文件末尾} ^

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM