2011-12-08 51 views
0

我面臨着以下細節修復Java虛擬機熱點錯誤的解決方案?

EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0bfc58d5, pid=5412, tid=5284  
Java VM: Java HotSpot(TM) Client VM (1.5.0_10-b03 mixed mode) 
Problematic frame: 
C [ExtractDetails.dll+0x158d5] 
An error report file with more information is saved as hs_err_pid5412.log  
[Current thread (0x0b0349c0): JavaThread "AWT-EventQueue-0" [_thread_in_native, id=5284] 

只從該程序試圖讀取文件中的特定數據錯誤出現在HotSpot虛擬機的錯誤,這是導致其崩潰。

是否有任何解決方案來解決這個錯誤或至少有一種方法來確定它到底失敗。 我試圖通過將運行時參數設置爲-Xmx4G來增加控制面板中的Java虛擬機內存,但仍面臨同樣的問題。

極客想解決這個問題嗎? 在此先感謝。

+0

您是否嘗試過使用另一臺虛擬機來查看是否仍然遇到相同的錯誤(例如,它不是來自虛擬機本身,而是來自代碼)? – Romain

+0

是羅曼。我使用了另一個VM,但這次仍然看到相同類型的錯誤:Java運行時環境檢測到一個致命錯誤:#pcd = 0x045758d5,pid = 3664,tid = 2748##JRE版本中的##EXCEPTION_ACCESS_VIOLATION(0xc0000005) :6.0_18-b05#Java VM:Java HotSpot(TM)客戶端虛擬機(16.0-b12混合模式windows-x86)#有問題的幀:#C [ExtractDetails.dll + 0x158d5] – Mohsin

回答

4

很可能這是您正在使用的ExtractDetails.dll中的一個錯誤。在這種情況下,你無法在java端修復這個問題。

+0

Mark,我該如何檢測ExtractDetails .dll它崩潰因爲我在我的Java類中使用本地代碼。 – Mohsin

+0

您可以將JNI庫的調試器附加到java.exe進程並使用斷點和其他調試工具。 – Robert

1

最簡單的嘗試是將用戶Java運行時更新爲更新的版本。

即使您想要/不得不停留在1.5/J2SE 5分支中,您的1.5.0_10-b03版本也會嚴重過時。 Java 1.5的最新發布版本是1.5.0_22。

但是我會建議更新到Java 1.6的最新版本 - 如果你的應用程序沒有問題。通常Java程序是向後兼容的。

+0

謝謝羅伯特。我已經將Java版本升級到了1.6版,但仍然面臨同樣的錯誤-Java運行時環境檢測到一個致命錯誤:##EXCEPTION_ACCESS_VIOLATION(0xc0000005)在pc = 0x045758d5,pid = 3664,tid = 2748## JRE版本:6.0_18-b05#Java VM:Java HotSpot(TM)客戶端虛擬機(16.0-b12混合模式windows-x86)#問題框架:#C [ExtractDetails.dll + 0x158d5] – Mohsin

+0

然後我認爲Mark的答案指出真正的問題。 – Robert