2009-10-13 11 views
0

J'ai une application Swing qui est fortement personnalisée avec beaucoup de peinture personnalisée principalement sur les panneaux et le bouton pour ajouter des dégradés et des bordures rondes.Interprétation des fichiers de plantage Java

L'application se bloque rarement exactement la même erreur et je reçois hs_err_pid [0000] .log

Snippet:

Java Threads: (=> current thread) 
    0x032ff400 JavaThread "Thread-1" daemon [_thread_in_native, id=3452, stack(0x04660000,0x046b0000)] 
    0x02b1c400 JavaThread "Keep-Alive-Timer" daemon [_thread_blocked, id=3524, stack(0x04850000,0x048a0000)] 
    0x03198800 JavaThread "Poller Thread" [_thread_blocked, id=2444, stack(0x04610000,0x04660000)] 
    0x032d3c00 JavaThread "ClientAPI::HttpConnection::InputStreamByteReader" [_thread_blocked, id=3672, stack(0x04ad0000,0x04b20000)] 
    0x03288400 JavaThread "ClientAPI::HttpConnection" [_thread_blocked, id=4564, stack(0x04a30000,0x04a80000)] 
    0x0329f400 JavaThread "ClientAPI::HttpPostConnection" [_thread_blocked, id=412, stack(0x049e0000,0x04a30000)] 
    0x02a90400 JavaThread "MultiThreadedHttpConnectionManager cleanup" daemon [_thread_blocked, id=3500, stack(0x048a0000,0x048f0000)] 
    0x003a9400 JavaThread "DestroyJavaVM" [_thread_blocked, id=132, stack(0x008c0000,0x00910000)] 
    0x03e56800 JavaThread "Thread-7" [_thread_blocked, id=2912, stack(0x04700000,0x04750000)] 
    0x03e1d800 JavaThread "TimerQueue" daemon [_thread_blocked, id=5728, stack(0x03da0000,0x03df0000)] 
    0x031abc00 JavaThread "AWT-EventQueue-0" [_thread_blocked, id=2788, stack(0x036c0000,0x03710000)] 
    0x0314ec00 JavaThread "AWT-Shutdown" [_thread_blocked, id=2468, stack(0x034a0000,0x034f0000)] 
=>0x02fbe400 JavaThread "Java2D Disposer" daemon [_thread_in_vm, id=5836, stack(0x03450000,0x034a0000)] 
    0x02a74400 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=3044, stack(0x02d20000,0x02d70000)] 
    0x02a6e400 JavaThread "CompilerThread0" daemon [_thread_blocked, id=3248, stack(0x02cd0000,0x02d20000)] 
    0x02a6cc00 JavaThread "Attach Listener" daemon [_thread_blocked, id=548, stack(0x02c80000,0x02cd0000)] 
    0x02a6b800 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=2792, stack(0x02c30000,0x02c80000)] 
    0x02a63000 JavaThread "Finalizer" daemon [_thread_blocked, id=1504, stack(0x02be0000,0x02c30000)] 
    0x02a61c00 JavaThread "Reference Handler" daemon [_thread_blocked, id=3124, stack(0x02b90000,0x02be0000)] 

Est-il possible d'interpréter ce fichier pour déterminer ce qui pourrait être mal dans ma demande?

Modifier, ajouté plus de détails

Du répondu à ce jour, ce article et le snipper ci-dessous, je pense que le réglage des curseurs est à l'origine de ces problèmes.

Stack: [0x03450000,0x034a0000], sp=0x0349f860, free space=318k 
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code) 
V [jvm.dll+0xd2db8] 

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code) 
j java.awt.Cursor.finalizeImpl(J)V+0 
j java.awt.Cursor.access$000(J)V+1 
j java.awt.Cursor$CursorDisposer.dispose()V+13 
j sun.java2d.Disposer.run()V+26 
j java.lang.Thread.run()V+11 
v ~StubRoutines::call_stub 
+0

Il devrait y avoir une sorte d'exception avec une pile dans le fichier de vidage - en avez-vous aussi? –

+0

@matt - vérifier mon édition – n002213f

+0

Alors, que faites-vous avec les curseurs? –

Répondre

4

This est un très bon guide pour l'interprétation hs_err fichiers journaux, en particulier sous Windows. C'est un processus assez complexe, malheureusement, mais qui devrait finalement vous guider vers le problème.

+0

Malheureusement, ce lien est cassé maintenant. – dvlcube

1

Notez que si vous n'utilisez pas JNI, rien, quelle que soit l'erreur de votre application, ne devrait entraîner une panne de la JVM. J'essaierais de l'exécuter sur différentes JVM et machines pour exclure les bogues JVM et les problèmes matériels.

0

Si vous utilisez un JRE Sun, les diagnostics doivent donner un lien vers la page de rapport de bogue appropriée. Il est important de vous assurer d'avoir à jour des pilotes de cartes graphiques JRE (6u15/6u16) et à jour.

+0

Bien que ce soit bon, je veux m'assurer que j'ai établi la cause de l'accident et peut-être avoir une solution de contournement au lieu de demander aux utilisateurs d'obtenir le JRE – n002213f

+0

actuel s'ils n'ont pas 6u15, ils auront des failles de sécurité connues code au moins). Vous pourriez vouloir les pousser le long. –

+0

Dans ce contexte, je vais pousser pour une mise à niveau de JRE, au moins, nous étions en train de signer l'application. – n002213f

Questions connexes