tags:

views:

467

answers:

2

I am using a Java coded desktop application to track my time on projects.

I used it until the IT did a new setup on my station. And now I cannot launch this application.

I got a log file when I launch it saying:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6d8fd8f5, pid=616, tid=4072
#
# JRE version: 6.0_15-b03
# Java VM: Java HotSpot(TM) Client VM (14.1-b02 mixed mode, sharing windows-x86 )
# Problematic frame:
# V  [jvm.dll+0xfd8f5]
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#

After googling some time, I went then on the Troubleshooting guide made by Sun and launch again the application with the -Xcheck:jni argument this time. The result is that I got this new error:

FATAL ERROR in native method: Wrong object class or methodID passed to JNI call
        at org.jdesktop.jdic.tray.internal.impl.DisplayThread.initTray(Native Method)
        at org.jdesktop.jdic.tray.internal.impl.DisplayThread.run(Unknown Source)
        - locked <0x2801e4e0> (a java.lang.Class for org.jdesktop.jdic.tray.internal.impl.DisplayThread)

I tried to download the last version of JDIC but even launching their own samples get me the same error. I guess that the issue is with the locked in the error message but I don't know where to go from now...

Could you help me?

My box:

  • Windows XP SP3

  • Java 6 (1.6.0_15)

UPDATE

It is now fixed unfortunately I can't tell how. Since yesterday the only thing I can tell is that I restarted at least once beside that I don't have installed a new java setup or anything else... Sorry if anybody is facing the same issue.

A: 

Ah the joys of JNI!

I think it is saying that the API of the native code library your application is trying to use is not compatible with the Java side. My guess is that the changes that the IT guys made included changing the library / DLL / whatever that the Java app is trying to use.

Stephen C
I've had similar problems with JDIC in so far that we now call it JD!ck. We used to use it for opening up CSV files in Excel however on some machines it would always hotspot. To fix this we reverted back to using Runtime.exec("cmd /c prog.exe"). However it looks like you want to play with the tray icon so this won't help.
pjp
The IT did a new setup but the library used by the application is still the same as before. The IT did not change it.
Valentin Jacquemin
A: 

See if you can call functions that don't take arguments without problems, compared to ones that do.

You may find that the interface no longer matches the library. If you are using SWIG to generate the interface files for example, different versions of SWIG generate different numbers of arguments.

Unfortunately mismatching the java interface code and the library code does not generate an error, it just crashes.

justinhj